和系统交互的模块
执行系统命令
import os
os.system('ping www.baidu.com')
运行可执行文件
import os
os.startfile(r'D:\QQ\Bin\QQScLauncher.exe')
文件操作
import os
os.name # 返回操作系统相关信息 ,windows 返回nt
os.sep # 返回文件路径分隔符,不同操作系统结果不一样
print(repr(os.linesep)) # 返回当前平台使用的行终止符,windows使用\r\n,linux使用\n,mac使用\r
print(os.getcwd()) # 获取当前工作目录
os.chdir(path) # 改变工作目录
os.mkdir(path) # 创建文件夹
os.rmdir(path) # 删除文件夹
os.mkdirs(path) # 创建多级目录
os.removedirs(path) # 删除多级目录,需要目录下为空
os.rename('旧目录','新名字') # 重命名文件夹
os.listdir('目录') # 返回目录下文件和文件夹的列表
os.path
print(os.path.isabs(r'D:\python37\python.exe')) # 判断路径是否为绝对路径
print(os.path.isdir(r'D:\python37\python.exe')) # 判断路径是否为文件夹
print(os.path.isfile(r'D:\python37\python.exe')) # 判断路径是否为文件
print(os.path.exists(r'D:\python37\python.exe')) # 判断路径是否存在
print(os.path.getsize(r'D:\python37\python.exe')) # 返回文件大小,单位b,若文件不存在会抛出异常
print(os.path.abspath('python.exe')) # 获取文件绝对路径
print(os.path.dirname(r'D:\python37\python.exe')) # 获取当前位置的目录名
print(os.path.getctime(r'D:\python37\python.exe')) # 获取文件创建时间
print(os.path.getatime(r'D:\python37\python.exe')) # 获取文件最后一次访问的时间
print(os.path.getmtime(r'D:\python37\python.exe')) # 获取文件最后一次修改时间
print(os.path.split(r'D:\python37\python.exe')) # 返回("D:\\python37","python.exe")
print(os.path.splitext(r'D:\python37\python.exe')) # 返回("D:\\python37\\python",".exe")
print(os.path.join(os.getcwd(),'a.txt')) # 自动使用系统分隔符连接字符,程序需要跨平台时使用
获取指定目录下所有指定文件
使用os.listdir
不包括子目录下文件和文件夹
import os
path = os.getcwd()
file_list = os.listdir(path)
for name in file_list:
if name.endswith('.py'):
print(name)
使用os.walk
import os
path = os.getcwd()
for dirpath,dirnames,filenames in os.walk(path):
# 获取path目录下所有文件(包括子目录)
for dir in dirnames:
print(os.path.join(dirpath,dir))
# 获取path目录下所有文件(包括子目录下文件)
for file in filenames:
print(os.path.join(dirpath,file))