10_1_OS模块
1.常用函数目录
函数名 | 功能 |
---|---|
os.name | 指示用户正在使用的工作平台 |
os.getcwd ( ) | 获取当前的工作目录 |
os.listdir ( ) | 返回指定目录下的所有文件和目录名 |
os.remove (file) | 删除指定文件 |
os.rename (‘a.txt’,‘b.txt’) | 对文件进行重命名 |
os.mkdir (name) | 创建目录 |
os.makedirs ( ) | 递归创建目录 |
os.rmdir (name) | 删除目录 |
os.removedirs (name) | 递归删除多个目录 |
os.system ( ) | 通过python来调用控制台命令 |
os.path.split ( ) | 返回一个路径的目录名和文件名 |
os.path.join (path,name) | 连接目录与文件名 |
os.path.dirname (path) | 返回文件路径 |
os.path.exists (name) | 判断是否存在文件或目录 |
os.path.isdir (path) | 判断参数是否为目录 |
os.stat (file) | 获取文件属性(有多个属性) |
os.stat (file).st_size | 获取文件大小 |
2.示例
(1)os.name
- 功能:指示用户正在使用的工作平台
- 对于Windows用户,它是 ‘nt’ ,而对于Linux/Unix用户,它是 ’posix’
>>> import os
>>> os.name
'nt'
(2)os.getcwd ( )
- 功能:获取当前的工作目录
>>> os.getcwd()
'C:\\Users\\lenovo\\AppData\\Local\\Programs\\Python\\Python38'
(3)os.listdir ( )
- 功能:返回指定目录下的所有文件和目录名
>>> os.listdir("c:\\")
['$Recycle.Bin', 'Documents and Settings', 'hiberfil.sys', 'inetpub', 'Intel', 'KDubaSoftDownloads', 'pagefile.sys', 'PerfLogs', 'Program Files', 'Program Files (x86)', 'ProgramData', 'Recovery', 'swapfile.sys', 'System Volume Information', 'tmp', 'Users', 'Windows']
(4)os.remove (file)
- 功能:删除指定文件
- 对于Windows用户,它是 ‘nt’ ,而对于Linux/Unix用户,它是 ’posix’
>>> os.remove("e:\\test.txt")
结果:
删除前
删除后
(5)os.rename (‘a.txt’,‘b.txt’)
- 功能:对文件进行重命名
>>> os.rename("e:\\a.txt","e:\\b.txt")
结果:
重命名前
重命名后
(6)os.mkdir (name)
- 功能:创建目录
>>> os.mkdir("e:\\test")
结果:
(7)os.makedirs ( )
- 功能:递归创建目录
>>> os.makedirs("e:\\a\\b")
结果:
(8)os.rmdir (name)
- 功能:删除目录
>>> os.rmdir("e:\\test")
结果:
删除前
删除后
(9)os.removedirs (name)
- 功能:递归删除多个目录台
>>> os.removedirs("e:\\a\\b")
结果:
删除前
删除后:
(10)os.system ( )
- 功能:通过python来调用控制台命令
>>> os.system('dir')
驱动器 C 中的卷没有标签。
卷的序列号是 90F6-555F
C:\Users\lenovo\AppData\Local\Programs\Python\Python38 的目录
2020/02/16 19:32 <DIR> .
2020/02/16 19:32 <DIR> ..
2020/02/16 19:32 <DIR> DLLs
2020/02/16 19:32 <DIR> Doc
2020/02/16 19:32 <DIR> include
2020/02/16 19:32 <DIR> Lib
2020/02/16 19:32 <DIR> libs
2019/12/18 23:27 31,322 LICENSE.txt
2019/12/18 23:27 879,215 NEWS.txt
2019/12/18 23:27 99,912 python.exe
2019/12/18 23:27 58,952 python3.dll
2019/12/18 23:27 4,191,304 python38.dll
2019/12/18 23:27 98,376 pythonw.exe
2020/05/16 10:50 <DIR> Scripts
2020/02/16 19:32 <DIR> tcl
2020/02/16 19:32 <DIR> Tools
2019/12/18 23:27 89,752 vcruntime140.dll
7 个文件 5,448,833 字节
10 个目录 34,787,536,896 可用字节
0
12345678910111213141516171819202122232425
(11)os.path.split ( )
- 功能:返回一个路径的目录名和文件名
>>> os.path.split("e:\\a\\b")
('e:\\a', 'b')
(12)os.path.join (path,name)
- 功能:连接目录与文件名
- 不会检测该路径是否真实存在
>>> os.path.join("e:\\test","a.txt")
'e:\\test\\a.txt'
(13)os.path.dirname (path)
- 功能:返回文件路径
>>> os.path.dirname("e:\\a\\b")
'e:\\a'
(14)os.path.exists (name)
- 功能:判断是否存在文件或目录
>>> os.path.exists("e:\\a\\b")
True
>>> os.path.exists("e:\\a\\bb1")
False
(15)os.path.isdir (path)
- 功能:判断参数是否为目录
>>> os.path.isdir("e:\\")
True
>>> os.path.isdir("b")
False
(16)os.stat (file)
- 功能:获取文件属性(有多个属性)
>>> os.stat("e:\\a\\b\\test.txt")
os.stat_result(st_mode=33206, st_ino=2814749767256628, st_dev=586237654, st_nlink=1, st_uid=0, st_gid=0, st_size=28, st_atime=1593337361, st_mtime=1593337372, st_ctime=1593337361)
(17)os.stat (file).st_size
- 功能:获取文件大小
>>> os.stat("e:\\a\\b\\test.txt").st_size
28