12. 模块和包¶

分类: bt365博彩 时间: 2025-09-08 15:15:37 作者: admin 观测: 7865
12. 模块和包¶

12.1.1. import 导入模块¶

在当前目录下创建三个文件 module0.py,module1.py 和 test_module.py,也即创建了三个模块,

它们的名字和文件名一致,分别为 module0,module1 和 test_module。

我们在 test_module 模块中引用 module0 和 module1 中的函数:

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22# module0.py

module_name = 'module0'

def module_info():

print("func in module0")

# module1.py

module_name = 'module1'

def module_info():

print("func in module1")

# test_module.py

import module0, module1 # 导入模块

print(module0.module_name)

print(module1.module_name)

module0.module_info()

module1.module_info()

>>>

module0

module1

func in module0

func in module1

import 语句是导入模块的一种方式,它具有以下特点:

一条 import 语句可以同时导入多个模块,以逗号分隔

import 将整个模块的全局符号表导入到当前模块的符号表中,可以使用模块中所有全局变量,类和函数

import 导入的模块,对其中的变量和函数访问时要加上模块名

导入的模块中相同函数名和变量名不会冲突

import 语句通常放在文件开头,这不是必须的,它也可以放在靠近引用模块的代码前。

重复导入相同的模块不会产生错误,解释器只在最早出现的 import 该模块的语句处导入。

导入模块时,解释器按照 sys.path 给出的路径顺序查找要导入的模块,以下是 Linux环境上的一个实例:

0

1

2

3

4

5

6import sys

print(sys.path)

>>>

['/home/red/sdc/lbooks/ml', '/usr/lib/python3.4',

'/usr/lib/python3.4/plat-i386-linux-gnu', '/usr/lib/python3.4/lib-dynload',

'/usr/local/lib/python3.4/dist-packages', '/usr/lib/python3/dist-packages']

当前路径具有最高优先级,所以模块命名不可与 Python 自带模块或第三方模块命名冲突,也不可和类,全局变量,内建函数命名冲突。sys.path 是一个路径的列表变量,

可以添加指定的路径:

0sys.path.append('/sdc/lib/python')

12.1.1.1. 重命名模块¶

使用 import 导入时可以为模块重新命名,将长命名模块进行缩写,可以让代码更简洁:

0

1

2

3

4

5

6import module0 as m0

import module1 as m1

print(m0.module_name)

print(m1.module_name)

m0.module_info()

m1.module_info()

← 云服务器资源冻结/释放/删除/退订常见问题 如何校准 Android 手机上的指南针? →

相关时空节点

win10怎么设置移动热点永不关闭 Win10设置移动热点保持开启

win10怎么设置移动热点永不关闭 Win10设置移动热点保持开启

07-14 💫 190
动漫相机app大全

动漫相机app大全

08-09 💫 104
大唐无双什么职业最强又好玩(最强职业选择推荐及强度排行榜)

大唐无双什么职业最强又好玩(最强职业选择推荐及强度排行榜)

08-18 💫 423