os模块
概述:包含了普遍的操作系统的功能
使用前要先import
import os
获取操作系统类型 :
#nt->windows posix->Linux、Unix或Mac OS X
print(os.name)
打印操作系统详细的信息(windows不支持)
print(os.uname())
获取操作系统中的所有环境变量
#print(os.environ)
获取指定环境变量
print(os.environ.get("APPDATA"))
获取当前目录
print(os.curdir)
#输出:. 点代表当前路径
获取当前工作目录,即当前python脚本所在的目录(目录指文件夹)
print(os.getcwd())
以列表的形式返回指定目录下的所有的文件
print(os.listdir(r"C:\Users\xgg\Desktop\Python"))
在当前目录下创建新目录
os.mkdir(r"C:\Users\xgg\Desktop\Python\kaige") #绝对路径
os.mkdir("sunck") #相对路径,创建在了当前的工作目录
删除目录
os.rmdir("sunck")
获取文件属性
print(os.stat("sunck"))
重命名
os.rename("sunck", "kaige")
删除普通文件
os.remove("file1.txt")
运行shell命令
括号内的命令和在cmd窗口中输入命令的效果一样
os.system("notepad") #打开记事本
os.system("write") #打开写字板
os.system("mspaint") #代开画图
os.system("msconfig") #打开系统设置
#os.system("shutdown -s -t 500") #500秒后关机
#os.system("shutdown -a") #取消关机
os.system("taskkill /f /im notepad.exe") #关闭正在执行的记事本程序
存在于os.path中的方法
查看当前的绝对路径
print(os.path.abspath("./kaige"))
拼接路径
注意: 参数2的开始不要有斜杠
p1 = r"C:\Users\xgg\Desktop\Python" #python后最好也不要有斜杠
p2 = r"sunck\abc\d" #sunck前不要有斜杠
#目标: r"C:\Users\xgg\Desktop\Python\sunck\abc\d"
print(os.path.join(p1, p2))
和直接用+号的区别在于,os.path.join(p1, p2)会根据环境自动适配连接两个路径的中间的斜杠(/、\)
拆分路径
path2 = r"C:\Users\xgg\Desktop\Python\os模块\kaige.txt"
print(os.path.split(path2))
#输出:('C:\\Users\\xgg\\Desktop\\Python\\os模块', 'kaige.txt')
#将最后的文件与目录分开
获取扩展名
print(os.path.splitext(path2))
#输出:('C:\\Users\\xgg\\Desktop\\Python\\os模块\\kaige', '.txt')
判断是否是目录
print(os.path.isdir(path2))
#输出:False
判断文件是否存在
print(os.path.isfile(path2))
#输出:False
判断目录是否存在
path3 = r"C:\Users\xgg\Desktop\Python\os模块"
print(os.path.exists(path3))
获得文件大小(字节)
print(os.path.getsize(path3))
#输出:0,要指定到某一文件
文件的目录
print(os.path.dirname(path2)) #返回文件目录
print(os.path.basename(path2)) #返回文件名,加扩展名