码迷,mamicode.com
首页 > 其他好文 > 详细

模块(一)

时间:2019-08-16 23:08:38      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:json   创建   分配   strong   常用   命名空间   有一个   ogg   条件语句   

模块

定义方法

在我们之前的学习中我们知道在python内置命名空间中定义了很多函数(例如len)和类(例如list)。

除了内置的定义外,标准的python程序分配包括数以千计的数值、函数以及被组织在附加库中的类(称之为模块,一个程序内可以导入)。比如time模块、random随机数模块。

python的import声明可以将定义从一个模块载入当前的命名空间中,import语法形式如下:

from time import sleep,time

这个命令将在time模块定义的timesleep添加到当前的命名空间中,允许直接使用sleep()函数方法。如果有许多定义来自导入的同一模块,则可以使用*,如:

from time import *

但是这种形式应该谨慎使用。危险在于,模块中定义的一些名称可能会与当前命名空间中的名称有冲突(或与导入的另一模块冲突),而导入的模块会产生新的定义去替换原有的定义。

另一种可以用于相同模块访问许多定义的方法就是导入模块本身,语法如下:

import time

同时将标识符time以及作为其值的模块引入当前的命名空间。一旦引入,模块中的定义可以用一个完全限定的名称来访问,例如time.sleep(1)

创建模块

如果要创建模块,我们只需要简单地把相关的定义放在一个扩展名为.py的文件里。这些定义可以从同一个工程目录下的其他.py文件中到入。导入语法见上文。

需要我们注意的是,当第一次导入时,模块源代码的顶层命令会被执行,就好像这个模块是自己的脚本。在模块中,如果该模块被直接调用作为一个脚本,而不是从另一个脚本导入模块时,将执行该模块中嵌入命令的特殊构造。

这样的命令应放在如下形式的条件语句中:

if __name__ = '__main__'

现有模块

除了自定义模块、内置模块,还有很多第三方模块和包(把一系列模块组织到一起的文件夹(注:文件夹下有一个__init__.py文件,该文件夹称之为包)),我们就先了解一些现有的对我们帮助比较大的现有模块吧!

常用模块名
time
datetime
random
os
sys
json 和 pickle
hashlib 和 hmac
logging
numpy
pandas
matplotlib
re
typing
shutil
xml

模块(一)

标签:json   创建   分配   strong   常用   命名空间   有一个   ogg   条件语句   

原文地址:https://www.cnblogs.com/Du704/p/11366525.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!