1. 系统信息获取
1.1 os.name
该变量返回当前操作系统的类型,posix , nt , java, 对应linux,windows,java虚拟机
import os
print(os.name)
1.2 sys.platform
该变量返回当前系统的平台标识
import sys
print(sys.platform)
系统 | 标识 |
---|---|
windows | 'win32' |
linux | 'linux' |
Windows/Cygwin | 'cygwin' |
Mac OS X | 'darwin' |
1.3 platform.system()
返回当前操作系统的名字
import platform
print(platform.system())
print(platform.platform()) #获取操作系统名称及版本号
print(platform.version()) #获取操作系统版本号
print(platform.architecture()) #获取操作系统的位数
print(platform.machine()) #计算机类型
print(platform.node()) #计算机的网络名称'
print(platform.processor()) #计算机处理器信息'
print(platform.uname()) #包含上面所有的信息汇总
2. 路径操作
-
获取当前工作路径
`cwd = os.getcwd()`
-
切换工作路径
os.chdir(path)
-
拼接路径
os.path.join(path,filename)
-
路径切分
os.path.split(path)
返回一个 (路径,文件名) 的元组
-
路径是否存在
os.path.exists(path)
-
文件夹是否存在
os.path.isdir(path)
-
文件是否存在
os.path.isfile(path)
-
文件名获取
os.path.basename(path)
-
获取路径操作分隔符
os.path.sep
3. 目录与文件操作
-
获取路径下所有所有文件和子目录
os.listdir(path)
-
递归获取路径下的 路径、目录、文件
for dirpath,dirs,files in os.walk(path): print(dirpath) print(dirs) print(files)
-
创建单级文件夹
如果存在目录会报错,配合os.exists()使用
os.mkdir(dirname)
-
创建多级文件夹
exist_ok为True,如果目录存在不报错
os.makedirs(path,exist_ok=True)
-
删除文件或目录
os.remove(filename)
-
递归删除所有文件与目录
import shutil shutil.rmtree(path, ignore_errors=True)
-
拷贝文件
path2如果存在则会被覆盖
from shutil import copyfile # 拷贝 path1 到 path2 copyfile(path1, path2)
-
拷贝目录
如果目录存在会报错!!!
from shutil import copytree # 拷贝 path1 目录中所有的内容 到 path2 中 copytree(path1, path2)
-
修改文件名和目录名
import os # 修改目录名 path1 为 path2 # 修改文件名 path1 为 path2 os.rename(path1,path2)