模块导入的规范
模块是类或函数的集合,用于实现某个功能。模块的导入和Java 中包的导入的概念很相似都使用import语句。在Python中,如果需要在程序中调用标准库或其他第三方库的类时,需要先使用import或from. … import. …语句导入相关的模块。
import语句
使用import语句导入sys模块,并打印相关内容的方法
代码
# 规范导入方式
import sys
print(sys.path)
print(sys.argv)
第⒉行代码使用import语句导入了sys模块,sys模块是处理系统环境的函数的集合。
第3行代码输出Python 环境下的查找路径的集合,Python默认情况下会查找sys. path返回的目录列表。列表是Python内置的数据结构,定义了一组数据,通常用来作为参数或返回值。
第4行代码的sys. argv是存储输入参数的列表。默认情况下,argv自带的参数是文件名
运行结果
from… import….语句
代码
# 不规范导入方式
from sys import path
from sys import argv
print(path)
print(argv)
第5行、第6行代码直接调用path、argv列表的内容,没有模块名的限定,这种写法不够规范。如果程序比较复杂,导入了很多模块,阅读程序的人并不了解path、argv来自哪个模块。而sys. path、sys. argv的写法可以清楚地知道path、argv来自sys模块。
多级目录导入方法
需要了解两个模块:
- sys模块
- os模块
# 多级目录导入方法:
import sys, os
sys.path() # 返回执行当前文件执行搜索的所有路径
BaseDir = os.path.abspath(__file__) # 获取当前文件的路径
addDir = os.path.dirname(os.path.dirname(BaseDir)) # 获取父目录地址
sys.path.append(addDir) #将改地址添加至默认搜索路径中
from logs import logger # 从包中导入模块
- sys.path():其返回值是一个列表,内包含搜索的所有路径。
- sys.path.append() : 是将目标路径追加至列表的末尾,也就是说,在搜索模块时,会先在当前目录进行搜索,进而到标准库,第三方库中进行搜索,如果都没有改模块,才会到追加的这个路径中进行搜索。如果标准库或第三方库中存在同名的模块,将不能访问到添加路径下的模块。
- sys.path.insert(): 会把路径加入到python系统路径列表的最前边
到此这篇关于浅谈Python模块导入规范的文章就介绍到这了,更多相关Python模块导入内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!