第一部分:Python
一.系统工具----sys模块
1.提供一组功能映射python运行时的操作系统,平台与版本:
sys.platform----系统版本
sys.version----python版本
sys.path----环境变量
sys.modules----已经载入的模块
2.观察异常细节:
sys.exc_info()----获取最后一次异常细节,返回元组(错误类别,错误信息,traceback信息)
traceback.print_tb(sys.exc_info()[2])----需要导入traceback模块,利用其print_tb函数,追踪到上一次错误的位置,也就是sys.exc_info()返回的元组的第[2]元素
import traceback
try:
raise KeyError('键值错误')
except KeyError as e:
print(sys.exc_info())
traceback.print_tb(sys.exc_info()[2])
(<class 'KeyError'>, KeyError('键值错误'), <traceback object at 0x0000020C983B05C8>)
File "<ipython-input-13-f4c3afc5b325>", line 2, in <module>
raise KeyError('键值错误')
3.命令行参数:sys.argv可以捕获命令行参数,返回一个列表。
import sys
def add(a,b):
return a + b
# sys.argv[0]为文件目录
print(sys.argv)
if len(sys.argv) < 3:
print('参数不够。')
else:
a = int(sys.argv[1])
b = int(sys.argv[2])
print(add(a,b))
命令提示符下运行结果:
4.标准流:
sys.stdin----标准输入流,默认等同于input()
sys.stdout----标准输出流,默认等同于print()
sys.stderr----标准错误流
注:std----standard,sys模块在实际编程中,命令行参数运用较多。
二.os模块
1.管理工具:
os.environ----environment,环境变量
os.getcwd()----get current word directory获得当前工作目录
os.listdir()----列举目录下信息列表,类似于ls
os.chdir()----change directory改变目录,类似于cd
os.getpid()----获取当前进程ID
os.getppid()----获取当前父进程ID
2.运行shell命令:
windows下的一些指令:dir----查看文件信息,cd----改变目录,cd…----返回上一级目录。
os.system()----python脚本中运行shell命令
os.popen()----python脚本中运行shell命令并连接输入输出流
os.system('dir')
os.popen('dir')
Out[48]: <os._wrap_close at 0x20c983da588>
os.popen('dir').readlines()
Out[49]:
[' 驱动器 G 中的卷是 软件\n'......
#文件信息省略
注:.system()返回结果可以直接看到信息,而.popen()返回的结果需要用readlines()等方法读出。
3.path工具
os.mkdir(‘目录名’)----make dir,创建目录
os.rmdir(‘目录名’)----remove dir,删除目录
os.rename(‘旧名’,’新名‘)----改名
os.remove(‘文件名’)----删除文件
4.路径模块.path:
os.path.isdir(path)----是否目录
os.path.isfile(path)----是否文件
os.path.exists(path)----是否存在
os.path.split(path)----拆分路径
os.path.splitext(path)----拆分路径扩展名
os.path.join(路径,文件名)----连接路径
os.path.normpath(path)----标准化路径(取决于操作系统)
os.path.abspath(path)----绝对化路径
import os
os.path.split(r'c:\data\temp\data.txt')
Out[51]: ('c:\\data\\temp', 'data.txt')
os.path.splitext(r'c:\data\temp\data.txt')
Out[52]: ('c:\\data\\temp\\data', '.txt')
os.path.join(r'c:\temp','product.csv')
Out[53]: 'c:\\temp\\product.csv'
name = r'c:\data\temp\data.txt'
os.path.dirname(name)
Out[56]: 'c:\\data\\temp'
os.path.basename(name)
Out[57]: 'data.txt'
# dirname----目录名称,basename----根基文件名
本文深入探讨了Python中的sys模块和os模块,详细介绍了sys模块如何提供系统级功能,如获取Python运行环境信息、处理异常和命令行参数。同时,文章也全面解析了os模块的功能,包括环境变量管理、目录操作、shell命令执行和路径处理。

被折叠的 条评论
为什么被折叠?



