《Python参考手册(第4版•修订版)》——1.16 模块

简介:

本节书摘来自异步社区《Python参考手册(第4版•修订版)》一书中的第1章,第1.16节,作者David M. Beazley,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.16 模块

随着程序变得越来越大,为了便于维护,需要把它分为多个文件。为此,Python允许把定义放入一个文件中,然后在其他程序和脚本中将其作为模块导入。要创建模块,可将相关的语句和定义放入与模块同名的文件中(注意,该文件的后缀必须是.py)。例如:

# 文件:    div.py 
def divide(a,b):
    q = a/b       # 如果a和b是整数,则q也是整数
    r = a – q*b
    return (q,r)

要在其他程序中使用该模块,可以使用import语句:

import div
a, b = div.divide(2305, 29)

import语句创建了一个新的命名空间,并在该命名空间中执行与.py文件相关的所有语句。要在导入后访问命名空间的内容,只要使用该模块的名称作为前缀,正如上面例子中的div.divide()一样。

如果要使用不同的名称导入模块,可以给import语句加上可选的as限定符,如下所示:

import div as foo
a,b = foo.divide(2305,29)

要将具体的定义导入到当前的命名空间中,可使用from语句:

from div import divide
a,b = divide(2305,29)      # 不再使用div前缀

要把模块的所有内容加载到当前的命名空间中,还可以使用以下语句:

from div import *

与对象一样,dir()函数可以列出模块的内容,是进行交互式实验的有用工具:

>>> import string
>>> dir(string) 
['__builtins__', '__doc__', '__file__', '__name__', '_idmap',
 '_idmapL', '_lower', '_swapcase', '_upper', 'atof', 'atof_error',
 'atoi', 'atoi_error', 'atol', 'atol_error', 'capitalize',
 'capwords', 'center', 'count', 'digits', 'expandtabs', 'find',
...
>>>
相关文章
|
14天前
|
机器学习/深度学习 存储 Python
|
1天前
|
Python Windows
python中的异常与模块
python中的异常与模块
8 1
|
11天前
|
JSON 数据格式 Python
Python标准库中包含了json模块,可以帮助你轻松处理JSON数据
【4月更文挑战第30天】Python的json模块简化了JSON数据与Python对象之间的转换。使用`json.dumps()`可将字典转为JSON字符串,如`{"name": "John", "age": 30, "city": "New York"}`,而`json.loads()`则能将JSON字符串转回字典。通过`json.load()`从文件读取JSON数据,`json.dump()`则用于将数据写入文件。
16 1
|
11天前
|
Python
Python实现压缩解压---tarfile模块详解
Python实现压缩解压---tarfile模块详解
|
11天前
|
Linux Python Windows
Python中time和datetime模块详解
Python中time和datetime模块详解
|
12天前
|
存储 Linux 数据安全/隐私保护
python的压缩模块zipfile详解
python的压缩模块zipfile详解
|
12天前
|
Linux Python Windows
python的os模块详细解读(二)
python的os模块详细解读(二)
|
12天前
|
移动开发 Linux Shell
python的os模块详细解读(一)
python的os模块详细解读(一)
python的os模块详细解读(一)
|
12天前
|
Python 容器
python内置函数、数学模块、随机模块(二)
python内置函数、数学模块、随机模块(二)