python模块,,1.python模块


1.python模块
模块是函数的扩展,函数是一段程序,模块是一段程序块
模块都是放在python的lib文件夹下,他封装了一系列功能,我们自定义的模块也是放在这里

导入模块

  import math    math.pi3.141592653589793

sys模块 官方提供的自带模块,叫做标准库模块 其中标准库中与系统有关的模块称之为sys模块

import syssys.version #查看版本信息sys.executable#查看当前运行目录sys.getwindowsversion()#获取window的信息sys.modules.keys()#当前导入模块信息

---------------------------------------------------------


2.字节编译
执行python的时候,一种是将模块里的内容编译成二进制语言,然后执行这些二进制语言
另一种是直接执行对应模块的二进制语言程序,第二种省略了编译这一步,所以执行
速度快而把模块编译成二进制语言程序的这个过程叫做字节编译,这个过程会产生一个
与编译模块对应的.pyc文件 pyc文件就是经过编译后的模块对应的二进制文件


运行一个python模块,如果有pyc文件就直接执行,诶有就先编译再执行

---------------------------------------------------------------------------------

3.from..import语句

import只是导入模块,并不导入方法

import sys sys.version

from..import既导入模块又导入方法

 from sys import version version#不用学sys.version‘3.5.0 (v3.5.0:374f501f4567, Sep 13 2015, 02:27:37) [MSC v.1900 64 bit (AMD64)]‘ sys.version‘3.5.0 (v3.5.0:374f501f4567, Sep 13 2015, 02:27:37) [MSC v.1900 64 bit (AMD64)]‘sys.modules.keys()from..import * #同时导入模块和模块中所有方法

----------------------------------------------------------
4.__name__属性
主模块
调用其他函数的函数叫做主函数 ,没有调用其他函数的函数叫做非主函数
直接被使用的模块叫做主模块,被其他模块调用的模块叫做非主模块

如果一个模块的__name__属性的值是__main__ 那么就说明这个模块是主模块
其实我们可以把__name__属性看做一个变量,这个变量是系统给出的,这个变量
的功能就是判断一个模块是否是主模块

__name__属性的使用
testname.py如下:

print (__name__)‘‘‘if __name__=="__main__":    print("main")else:    print("not")‘‘‘

如果我们直接执行testname.py会发现输出了__main__,因为print(__name__)此时__name__作为的是主模块

if __name__=="__main__":    print("main")else:    print("not")

这串代码在直接导入的时候会输出main 在import的时候会输出not

-------------------------------------------------------------------------
5.自定义模块:我们写的 保存在lib目录下的py文件就叫做自定义模块
a.py如下

i=0#没有默认参数的时候导入都会报错j=0#没有默认参数的时候导入都会报错#或者 int i #      int jdef add(i,j):    k=i+j    return kk=add(i,j)print (k)

使用:

import aa.add(1,2)

-------------------------------------------------------------------------
6. dir()函数

查看指定模块的功能列表,查看任意制定对象的功能列表

 import sys dir(sys)[‘__displayhook__‘, ‘__doc__‘, ‘__excepthook__‘, ‘__interactivehook__‘, ‘__loader__‘, ‘__name__‘, ‘__package__‘, ‘__spec__‘, ‘__stderr__‘, ‘__stdin__‘, ‘__stdout__‘, ‘_clear_type_cache‘, ‘_current_frames‘, ‘_debugmallocstats‘, ‘_getframe‘, ‘_home‘, ‘_mercurial‘, 。。。] d=[]dir(d)[‘__add__‘, ‘__class__‘, ‘__contains__‘, ‘__delattr__‘, ‘__delitem__‘。。。]

python模块

相关内容

    暂无相关文章

评论关闭