模块

在其他程序中重用很多函数,使用模块。模块基本上就是包含了所有你定义的函数和变量的文件。为了在其他程序中重用模块,模块的文件名必须以.py为扩展名。

模块可以从其他程序输入以便利用它的功能。

例:使用sys模块

import sys

print 'the command line arguments are:'
for i in sys.argv:
print i
print '\n\nThe PYTHONPATH is',sys.path,'\n'

运行:

shiyan@ubuntu:~/Desktop/pythonLearn$ ./test.py we are arguments
the command line arguments are:
./test.py
we
are
arguments




The PYTHONPATH is ['/home/shiyan/Desktop/pythonLearn', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PIL', '/usr/lib/python2.7/dist-packages/gst-0.10', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/python2.7/dist-packages/ubuntu-sso-client', '/usr/lib/python2.7/dist-packages/ubuntuone-client', '/usr/lib/python2.7/dist-packages/ubuntuone-control-panel', '/usr/lib/python2.7/dist-packages/ubuntuone-couch', '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol'] 


shiyan@ubuntu:~/Desktop/pythonLearn$

当python执行import sys语句时,它在sys.path变量中所列目标中寻找sys.py模块,如果找到了,这个模块的主块中的语句将被执行,

然后这个模块将能够被你使用。

sys模块中的argv变量通过使用点号指明---sys.argv---好处是这个名称不会与你程序中的使用的argv变量冲突,也表明这个名称是sys模块中的一部分。

sys.argv是一个字符串的列表,它包含了命令行参数,即使用命令行传给你的程序的参数

sys.srgv[0]是./test.py以此类推

------------------------------------------------------------>字节编译的.pyc文件

导入一个模块相对来说是一个比较费时的事情,因此python使用创建字节编译的文件来使导入模块更加快一些,这些文件以.pyc为扩展名。字节编译的文件与python变换程序的中间状态有关,与平台无关

pyc文件介绍:http://blog.csdn.net/sislcb/article/details/4002414

----------------------------------------------------------------->from..import语句

如果想在程序中直接输入argv而不是sys.argv,可使用from sys import argv语句,使用模块中所有的名字则from sys import *;一般来说尽量使用import语句,增加程序的可读性,同时避免名称冲突

------------------------------------------------------------------>模块的__name__

http://sebug.net/paper/python/ch08s04.html

-------------------------------------------------------------->创建模块

#!/usr/bin/python
def sayhi():
print 'hi,this is myModule.'
version='0.1'

使用模块:

#!/usr/bin/python
#filename:test.py
import myModule

myModule.sayhi()
print 'version',myModule.version

运行输出:

shiyan@ubuntu:~/Desktop/pythonLearn$ ./test.py
hi,this is myModule.
version 0.1
shiyan@ubuntu:~/Desktop/pythonLearn$ 

shiyan@ubuntu:~/Desktop/pythonLearn$ ls
myModule.py  myModule.pyc  test.py

得到myModule.pyc文件,需要编译成pyc文件的应该是那些可以重用的模块,把 py文件编译成pyc文件最大的优点是在于我们在运行程序时不需要对该模块进行重新的解释,python的解释器认为;只有import进来的模块才是需要被重用的模块。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值