1.系统管理
import os #导入os模块
文件操作:
os.rename(源文件名,目标文件名) #重命名文件
os.remove(文件名) #删除该文件
拷贝复制文件:
对于 Windows 系统: 对于 Liunx 系统:
import os import os
os.system('copy .\txt.py .\备份数据\txt.py') os.system('cp .\txt.py .\备份数据\txt.py')
目录操作:
os.listdir(目录名) #目录列表
os.mkdir(目录名) #创建目录(已创建存在,则报错)
os.rmdir(目录名) #删除目录
os.getcwd() #获取当前目录
os.chdir(目录名) #修改工作目录
os.path.isdir(文件路径) #判断是否是文件
进程相关的操作:
os.system(cmd) ----- 运行一个程序或命令,会立即返回,上述很多操作都可以用该函数完成
os.system("taskkill /F /IM QQ.exe")解释QQ.exe是程序变量,结束程序
os.startfile(r'filename) ----- 用与文件关联的程序运行,关联程序打开后,立即返回
os.execl(path) ----- 运行一个程序来替代当前进程,会阻塞式运行
os._exit(n) ----- 退出程序
os.system("taskkill /F /IM QQ.exe") 解释QQ.exe是程序变量,结束程序
新方法打开APP:
os.startfile(r’E:\WeChat\WeChat.exe’) #打开微信
2.其他:shutil库(扩展)
直接删除整个含有众多文件的文件夹
import shutil
try:
path_1 = ‘.\主图专用\PS制图\{}.{}小图’.format(month, day)
path_2 = ‘.\主图专用\PS制图\{}.{}主图’.format(month, day)
path_3 = ‘.\主图专用\PS制图\{}.{}小拼图’.format(month, day)
path_4 = ‘.\主图专用\PS制图\{}.{}大拼图’.format(month, day)
shutil.rmtree(path_1) # 删除文件夹以及里面的文件
shutil.rmtree(path_2)
shutil.rmtree(path_3)
shutil.rmtree(path_4)
print('成功删除指定路径下的文件夹')
except:
print(‘不存在该文件夹’)
3.natsort库排序问题,和Windows按名称排序,属于自然排序
os.listdir() 读取的路径下文件是乱序排
natsort 库才能和Windows显示的一直排序一样,叫自然排序 from natsort import ns, natsorted
from natsort import ns, natsorted
import os
folder = r"D:/python_code/改表格名称excel/FROG-4月10日衣服订单 - DHL+云途 - 副本/FROG-4月10日衣服订单 - 云途设计文件"
files = os.listdir(folder)
files_0 = sorted(files)
print('字符排序:')
print(files_0)
files_1 = natsorted(files, alg=ns.PATH) # 要加alg=ns.PATH参数才和windows系统名称排序一致
print('自然排序:')
print(files_1)