两种导入模块的方法
- import 模块名: 导入一个模块,相当于导入的是一个文件夹(模块名.py)是一个相对路径,调用模块下的函数方法使用“模块名.方法名()”的形式 ,还可以用(import 模块名 as 别名)的形式给模块起别名,如果要调用的模块名过长,可以起别名方便调用。
- from … import …:导入一个模块中的一个函数,相当于导入的是一个文件夹中的文件,是绝对路径
两种方法的区别:
import 模块名
模块名.xxx = 引用
from 模块名 import *
xxx = 拷贝 # 能修改属性值
reference:from…import * 语句与 import 区别.
if __name__==‘main’
这一句是每个程序执行的入口
>>> print(__name__)
__main__
>>> import socket
>>> print(socket.__name__)
socket
>>> import os
>>> os.path
<module 'ntpath' from 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python39\\lib\\ntpath.py'>
>>> print(os.__name__)
os
搜索路径
Q: 写好的模块应该存放在哪里?
python模块的导入需要一个路径搜索的过程, python会在预定义的路径中寻找名为×××.py的文件名,如果成功找到,就返回模块。预定义的寻找路径可以通过sys模块的path变量显示出来,可以看到他们是一组列表。
>>> import sys
>>> sys.path
['F:/Pythonspace', 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python39\\Lib\\idlelib', 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python39\\python39.zip', 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python39\\DLLs', 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python39\\lib', 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python39', 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages'] # 最好存放到site-packages中
包
创建
- 创建一个文件夹,用于存放相关的模块,文件夹的名字即为包的名字
- 在文件夹中创建一个__init__.py的模块文件,内容可以为空
调用
import 包名.类名 as t
快速学习模块的功能
- 通过__doc__来查看函数注释
- 通过dir方法查看函数属性
- 通过__file__方法来查看模块源代码存放的路径