python 模块

模块是包含函数和其他语句的python脚本文件,它以 .py 为后缀名。在python中可以通过导入模块,然后使用模块中提供的函数或者数据。

1、导入模块:

import 模块名

import 模块名 as 新名字

from 模块名 import 函数名

  1. >>> import  string   #只指明模块的导入方法 
  2. >>> string.capitalize('use modules'
  3. 'Use modules' 
  4. >>> capitalize('use modules') #错误的调用方法 
  5. Traceback (most recent call last): 
  6.   File "<stdin>", line 1, in <module> 
  7. NameError: name 'capitalize' is not defined 
  8. >>> from math import sqrt  #指明函数的导入方法 
  9. >>> sqrt(9
  10. 3.0 
  11. >>> math.sqrt(9) #错误的方法 
  12. Traceback (most recent call last): 
  13.   File "<stdin>", line 1, in <module> 
  14. NameError: name 'math' is not defined 
  15. >>> 

显然在指明函数的导入方法中,在使用方法时可以不用指明模块名,所以要更方便一些,于是可以将模块的所有函数同时导入。

  1. >>> from string import
  2. >>> split('user modules'
  3. ['user', 'modules'
  4. >>> capitalize('use modules'
  5. 'Use modules' 
  6. >>> 

2)模块的查找路径

python 解释器首先在当前目录中查找导入的模块。如果未找到模块,python解释器会从sys模块中的path变量指定的目录查找导入模块。

在脚本中可以向sys.path添加模块查找路径。下面将当前目录下的module子目录添加到sys.path中。

  1. >>> import os 
  2. >>> os.getcwd() 
  3. 'C://Documents and Settings//asus' 
  4. >>> import sys 
  5. >>> modulepath = os.getcwd() + '//module' 
  6. >>> sys.path.append(modulepath) 
  7. >>> print sys.path 
  8. ['', 'C://WINDOWS//system32//python26.zip', 'C://Python26//DLLs', 'C://Python26/ 
  9. /lib', 'C://Python26//lib//plat-win', 'C://Python26//lib//lib-tk', 'C://Python26 
  10. ', 'C://Python26//lib//site-packages', 'C://Documents and Settings//asus//module 
  11. '] 
  12. >>> 

3)模块编译

对于模块而言, python 总是在第一次调用后将其编译成字节码的形式的pyc文件,以提高脚本的启动速度。

对于不作为模块的脚本而言,python不会在运行脚本后将其编译成字节码的形式。如果想将其编译的话,可以用如下方式:

#file:complie.py

#

import py_compile                             #导入py_complile模块

py_compile.compile('usemodule.py')  #编译usemodule.py

4)模块运行——__name__ 属性 (在name前后均是两条下划线)

当脚本是独立运行时,__name__属性的值是 __main__ ,当作为模块被导入时,__name__属性的值是模块名

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值