OS模块
Operate System 操作系统
os模块包含普遍的操作系统的功能,掌握这个模块,可以使程序编写后不需要考虑平台因素
使用前,需要提前导入模块:import os
OS相关常用函数:
1、getcwd()
语法:os.getcwd()
功能:获取当前工作目录(默认是当前文件的文件夹)
1 import os 2 3 x = os.getcwd() 4 print(x) 5 --->C:\Users\hasee\Desktop\test_code
2、chdir()
语法:os.chdir(path)
功能:改变当前工作目录
操作时,如果是写完整的路径,则不需要考虑默认工作目录的问题,按实际路径操作
1 import os 2 3 print(os.getcwd()) 4 os.chdir('D:') 5 print(os.getcwd()) 6 7 --->C:\Users\hasee\Desktop\test_code 8 --->D:\
3、listdir()
语法:os.listdir(path)
功能:获取指定文件夹中所有内容的名称列表
1 import os 2 3 name = os.listdir(r'C:\Users\hasee\Desktop\test_code') 4 print(name) 5 --->['.idea', '.vscode', '99乘法表.py', 'a.py', 'aa.py', 'aaaa.py', 'test.txt', 'test1.py', 'test2.py', 'test3.py', 'test4.py', 'zip_file.py', '__pycache__']
4、mkdir()
语法:os.mkdir(path)
功能:创建一个目录或文件夹
1 import os 2 3 os.mkdir(r'C:\Users\hasee\Desktop\new_dir')
5、makedirs()
语法:os.makedirs(path)
功能:递归创建文件夹
1 import os 2 # 会在创建了new_dir后,继续在其中创建01,在01中创建02,在02中创建03文件夹 3 os.makedirs(r'C:\Users\hasee\Desktop\new_dir\01\02\03')
6、rmdir()
语法:os.rmdir(path)
功能:删除空目录,不会经过回收站
1 import os 2 3 os.rmdir(r'C:\Users\hasee\Desktop\new_dir1')
7、removedirs()
语法:os.removedirs(path)
功能:递归删除空目录
1 import os 2 # 从03文件夹开始删除,删除后02为空文件夹,则删除02,一次类推,直到某一个文件夹不为空,则停止 3 os.removedirs(r'C:\Users\hasee\Desktop\new_dir\01\02\03')
8、rename()
语法:os.rename(src, dst)
功能:重命名文件或文件夹
1 import os 2 3 os.rename(r'C:\Users\hasee\Desktop\私人', r'C:\Users\hasee\Desktop\hello')
9:stat()
语法:os.stat(path)
功能:获取文件或文件夹信息
1 import os 2 3 x = os.stat(r'C:\Users\hasee\Desktop\test_code') 4 print(x) 5 --->os.stat_result(st_mode=16895, st_ino=34621422135480737, st_dev=484028907, st_nlink=1, st_uid=0, st_gid=0, st_size=4096, st_atime=1520845318, st_mtime=1520845318, st_ctime=1517321323) <class 'os.stat_result'>
10、system()
语法:os.system(cmd)
功能:执行系统命令,返回的是脚本的退出状态码
popen()
语法:os.popen(cmd)
功能:执行系统命令,返回的是脚本执行过程中,输出的内容
1 import os 2 3 x = os.system('ipconfig') 4 print(x) 5 --->0 6 7 ys = os.popen('ipconfig') 8 # ys.readlines()读取命令行的输出到一个list中 9 # 遍历这个list 10 for y in ys.readlines(): 11 y = y.strip('\r\n') 12 print(y)
11、getenv()
语法:os.getenv(key)
功能:获取环境变量
1 import os 2 3 x = os.getenv('Path') 4 print(x)
12、putenv()
语法:os.putenv(env_name, path)
功能:设置环境变量(临时增加,仅对当前文件有效)
13、_exit()
语法:os._exit(status)
功能:退出终端
OS模块常用值:
1、os.curdir . 表示当前文件夹,一般可以省略
1 import os 2 3 print(os.curdir) 4 --->.
2、os.pardir .. 表示上一层文件夹,不可以省略
1 import os 2 3 print(os.pardir) 4 --->..
3、os.name 得到代表操作系统的字符串
nt 代表Windows
posix代表Linux或Unix
1 import os 2 3 print(os.name) 4 --->nt
4、os.sep 获取系统路径分隔符
Windows系统为 \
Linux 系统为 /
1 import os 2 3 print(os.sep) 4 --->\
5、os.extsep . 获取文件名和后缀之间的间隔符号
1 import os 2 3 print(os.extsep) 4 ---> .
6、os.linesep 获取操作系统的换行符号
Windows系统为 \r\n
Linux系统为 \n
1 import os 2 3 print(repr(os.linesep)) # repr() 函数:原样输出字符串,不转义其中的转义字符 4 --->'\r\n'