目录
一、脚本
二、模块
引入模块
引入局部内容
_ _name_ _
模块的搜索路径
一、脚本
- 把代码写入文件,不再直接写在Python解释器中;
一个脚本,在Python中就是一个.py文件。
二、模块
- 一个.py文件就是一个模块。
- 为了重复代码的优化,Python提出了引用模块。
-
引入模块
引入模块
用import(import module_name)
1、先创建两个.py文件diamond_module.py和trapezium_module.py,并在里面写入“打印菱形”和“打印梯形”。
然后在源文件中写入
import diamond_module # 引入模块 import trapezium_module
结果
2、如果在引入的文件中写入
然后在源文件中写入
print(diamond_module.data1) print(diamond_module.data2)
结果
-
引入局部内容
用from(from module_name import)--class/function/variable(可以导入多个)
(from package_name import module)
(from module_name import *)--*代表全部(但是用*的时候文件里不能有“_”)
1、本来是不能直接打印data1和data2里的内容,但是用from引用后就可以里了。
from diamond_module import data1 from diamond_module import data2 print(data1) print(data2)
结果
2、导入多个
from diamond_module import data1, data2 print(data1, data2)
结果
3、如果在源文件中也有一个data1,打印的时候打印的是源文件的data1,不是引入的data1。
(但也要看顺序的问题)
4、重命名:用as
from diamond_module import data1 as d, data2 print(d, data2)
-
_ _name_ _
值为模块名称,但是如果是主模块(主程序)的时候值为_main_;
如果不是主模块时,等于模块名。
主模块就是当前运行的文件。
1、在主模块里打印
2、不再主模块里打印(用from module_name import *打印diamond_module文件里的全部)
3、当diamond_module是主模块的时候才打印内容的用法
if __name__ == '__main__':
print("闲趣")
在 diamond_module中可以打印出“闲趣”
在module中就打印不出来
-
模块的搜索路径
导入Spam模块时,解释器首先查找名为Spam的内置模块。如果没找到,解释器再从sys.path变量中的目录列表里查找Spam.py文件。
注意:在模块起名的时候,不要和Python解释器内部的名称重复。
直接搜索
import os print(os.curdir)



