- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编写模块
编写模块
在本章之前,python还没有显⽰出太突出的优势。本章开始,读者就会越来越感觉到
python的强⼤ 。这种强⼤体现在“模块⾃信”上,因为python不仅有很强⼤的⾃有模
块 (称之为标准库),还有海量的第三⽅模块,任何⼈还都能⾃⼰开发模块,正是有
这么强⼤的“模块⾃信” ,才体现 python的优势所在。并且这种⽅式也正在不断被
更多其它语⾔所借鉴。
“模块⾃信”的本质是:开放。
python不是⼀个封闭的体系,是⼀个开放系统。开放系统的最⼤好处就是避免 “熵
增” 。
熵的概念是由德国物理学家克劳修斯于1865年 (这⼀年李鸿章建⽴ 江
南机械制造总局,美国废除奴⾪制,林肯总统遇刺⾝亡,美国南北战争
结束。)所提出。是⼀种测量在动⼒学⽅⾯不能做功的能量总数,也就
是当总体的熵增加,其做功能⼒也下降,熵的量度正是能量退化的指
标。
熵亦被⽤于计算⼀个系统中的失序现象,也就是计算该系统混乱的程
度。
根据熵的统计学定义, 热⼒学第⼆定律说明⼀个孤⽴系统的倾向于增加
混乱程度。换句话说就是对于封闭系统⽽⾔,会越来越趋向于⽆序化。
反过来,开放系统则能避免⽆序化。
回忆过去
在本教程的 《语句(1)》中,曾经介绍 import语句,有这样⼀个例⼦:
import math
math.pow(3,2)
9.0
这⾥的math就是⼀个模块,⽤import引⼊这个模块,然后可以使⽤模块⾥⾯的函数,
⽐如这个pow()函数。显然,这⾥我们是不需要⾃⼰动⼿写具体函数的,我们的任务
就是拿过来使⽤。这就是模块的好处:拿过来就⽤,不⽤⾃⼰重写。
模块是程序
这个标题,⼀语道破 模块的本质,它就是⼀个扩展名为.py的python程序。我们能
够在应该使⽤它的时候将它引⽤过来,节省精⼒,不需要重写雷同的代码。
但是,如果我⾃⼰写⼀个.py⽂件,是不是就能作为模块import过来呢?还不那么简
单。必须得让python解释器能够找到你写的模块。⽐如:在某个⽬录中,我写 这样
⼀个⽂件:
# !/usr/bin/env python
# codin =utf-8
lan = python
并把它命名为pm .py ,那么这个⽂件就可以作为⼀个模块被引⼊。不过由于这个模块
是我⾃⼰写的,python解释器并不知道,我得先告诉它我写 这样⼀个⽂件。
import sys
sys.path.append(~/Documents/VBS/StartLearnin Python/2code/pm.
⽤这种⽅式就是告诉python解释器,我写的那个⽂件在哪⾥。在这个告诉⽅法中,也
⽤ ⼀个模块import sys,不过由于sys模块是python被安装的时候就有的,所以不
⽤特别告诉,python解释器就知道它在哪⾥ 。
上⾯那个⼀长串的地址,是ubuntu系统的地址格式,如果读者使⽤的windows系统,
请写你所保存的⽂件路径。
import pm
pm.lan
python
本来在pm .py⽂件中,有⼀个变量lan = python,这次它作为模块引⼊ (注意
作为模块引⼊的时候,不带扩展名),就可以通过模块名字来访问变量pm.py,当
然,如果不存在的属性这么去访问,肯定是要报错的。
pm.xx
Traceback (most recent call last):
File stdin, line 1, in module
AttributeError: module object has no attribute xx
请读者回到pm .py⽂件的存储⽬录,是不是多 ⼀个扩展名是.pyc的⽂件?如果不是,
你那个可能是外星⼈⽤的python 。
解释器,英⽂是:interpreter ,港台翻译为:直译器。在python 中,它的
作⽤就是将.py的⽂件转化为.pyc⽂件,⽽.pyc⽂件是由字节码(bytecode)
构成的,然后计算机执⾏.pyc⽂件。关于这⽅⾯的详细解释,请参阅维
基百科的词条:直譯器
不少⼈喜欢将这个世界简化简化再简化。⽐如⼈,就分为好⼈还坏⼈,⽐如编程语⾔
就分为解释型和编译型,不但如此,还将两种类型的语⾔分别贴上运⾏效率⾼低的标
签,解释型的运⾏速度就慢,编译型的就快。⼀般⼈都把python看成解释型的,于是
就得出它运⾏速度慢
您可能关注的文档
- 百度2012开发者别册.pdf
- 福建省水泥行业发展预测及投资战略报告(2017-2022)-目录.pdf
- 福晶科技:2009年年度报告摘要 2010-03-31.pdf
- 福晶科技:2009年年度审计报告 2010-03-31.pdf
- 瞬间世界1.ppt
- 福晶科技:2010年半年度财务报告 2010-08-11.pdf
- 福晶科技:2010年第三季度报告全文 2010-10-20.pdf
- 福晶科技:2010年第一季度报告全文 2010-04-27.pdf
- 福晶科技:独立董事2009年度述职报告(李建发) 2010-03-31.pdf
- 福晶科技:独立董事2009年度述职报告(梁巨元) 2010-03-31.pdf
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
文档评论(0)