1 sys模块
1.1 基础用法
sys模块主要是针对与Python解释器相关的变量和方法,不是主机操作系统。
sys.argv #获取命令行参数列表,第一个元素是程序本身
sys.exit(n) #退出Python程序,exit(0)表示正常退出。当参数非0时,会引发一个SystemExit异常,可以在程序中捕获该异常
sys.version #获取Python解释程器的版本信息
sys.maxsize #最大的Int值,64位平台是2**63 - 1
sys.path #返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform #返回操作系统平台名称
sys.stdin #输入相关
sys.stdout #输出相关
sys.stderr #错误相关
sys.exc_info() #返回异常信息三元元组
sys.getdefaultencoding() #获取系统当前编码,默认为utf-8
sys.setdefaultencoding() #设置系统的默认编码
sys.getfilesystemencoding() #获取文件系统使用编码方式,默认是utf-8
sys.modules #以字典的形式返回所有当前Python环境中已经导入的模块
sys.builtin_module_names #返回一个列表,包含所有已经编译到Python解释器里的模块的名字
sys.copyright #当前Python的版权信息
sys.flags #命令行标识状态信息列表。只读。
sys.getrefcount(object) #返回对象的引用数量
sys.getrecursionlimit() #返回Python最大递归深度,默认1000
sys.getsizeof(object[, default]) #返回对象的大小
sys.getswitchinterval() #返回线程切换时间间隔,默认0.005秒
sys.setswitchinterval(interval) #设置线程切换的时间间隔,单位秒
sys.getwindowsversion() #返回当前windwos系统的版本信息
sys.hash_info #返回Python默认的哈希方法的参数
sys.implementation #当前正在运行的Python解释器的具体实现,比如CPython
sys.thread_info #当前线程信息
1.2 用的比较多的
- sys.argv
# sys.argv
# test.py
for index,arg in enumerate(sys.argv):
print(f"第{index}个参数:{arg}")
# python test.py one two
# 第0个参数:test.py
# 第1个参数:one
# 第2个参数:two
- sys.path
path是一个目录列表,供Python从中查找模块。在Python启动时,sys.path根据内建规则和PYTHONPATH变量进行初始化。sys.path的第一个元素通常是个空字符串,表示当前目录。
sys.path
#['', 'C:\\Python36\\Lib\\idlelib', 'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib', 'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
sys.path本质上是一个列表,可以进行append、insert、pop、remove等各种列表相关的操作,但通常都进行append操作,添加自己想要的查找路径。
2 os模块
2.1 基础用法
os.name #字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'
os.getcwd() #函数得到当前工作目录,即当前Python脚本工作的目录路径
os.getenv()和os.putenv() # 函数分别用来读取和设置环境变量
os.listdir() #返回指定目录下的所有文件和目录名
os.remove() #函数用来删除一个文件
os.system() #函数用来运行shell命令
os.linesep #字符串给出当前平台使用的行终止符。例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'
os.sep #操作系统特定的路径分割符
os.path.split() #函数返回一个路径的目录名和文件名
os.path.isfile()和os.path.isdir() #函数分别检验给出的路径是一个文件还是目录
os.path.exist() #函数用来检验给出的路径是否真地存在