OS库下,目录相关方法
分类
方法
参数
作用
获取
getcwd()
无
获取当前目录
listdir()
path
返回目录下的所有文件和子目录
创建
mkdir()
path
创建目录(文件夹),已存在时报错
makedirs()
path
递归创建目录(文件夹), 层层创建
删除
rmdir()
path
删除目录
removedirs()
path
递归删除目录,层层删除
改变
chdir()
path
改变当前目录
fchdir()
fd
改变当前目录,fd为文件描述符
chroot()
path
改变根目录
重命名
rename()
src, dst
重命名文件或目录
renames()
old, new
递归重命名文件或目录
import os
os.getcwd() #'C:\\Users\\Administrator\\Desktop'
path = 'C:\\Users\\Administrator\\Desktop'
os.listdir(path) #['1.txt', '2.txt', ...]
os.rename('3.txt', '4.txt') #把文件名从【3】改成【4】
os.path 操作目录
分类
方法
参数
作用
时间
getctime()
单个路径
创建时间
getmtime()
单个路径
最后一次修改时间
getatime()
单个路径
最后一次访问时间
路径
exists()
单个路径
路径是否存在
abspath()
单个路径
获取绝对路径
dirname()
单个路径
获取目录
其它
getsize()
单个路径
获取文件大小
commonprefix()
路径列表
获取相同前缀
commonpath()
路径列表
获取相同路径
import os
a = "C:/Users/Administrator/Desktop/1.txt"
print(os.path.exists(a)) #True
print(os.path.abspath(a)) #C:\Users\Administrator\Desktop\1.txt
print(os.path.dirname(a)) #C:/Users/Administrator/Desk
print(os.path.getsize(a)) #4
import time
print(os.path.getctime(a)) #1594851752.9577408
print(os.path.getmtime(a)) #1596328973.92547
print(os.path.getatime(a)) #1594851752.9577408
b = "C:/Users/Administrator/Desktop/2.txt"
print(os.path.commonprefix([a,b])) #C:\Users\Administrator\Desktop
print(os.path.commonpath([a,b])) #C:/Users/Administrator/Desktop/
# pathlib 路径
父类PurePath操作路径的字符串,子类Path操作路径。python会根据操作系统调用合适的类
PurePath
创建PurePath对象
参数
无
单个字符串
多个字符串
多个路径
返回值
当前路径,同【.】
字符串
用【\】拼接
最后一个路径
注意:
windows中,路径不区分大小写
系统信息中的路径用【\】连接,python中各级路径要用【/】连接,前者为转义字符
多余的斜杠和点会被忽略,例外:【…】代表上一级路径 a = PurePath(“foo/…/bar”)表示:寻找与【foo】同级的【bar】的路径
from pathlib import *
a = PurePath() #.
a = PurePath('aaa') #aaa
a = PurePath('aa','bb') #aa\bb
a = PurePath("C:", "C:/Users") #C:\Users
PurePath对象的属性
属性
含义
参数:"C:/Users/Administrator/Desktop/test.py"
parts
各部分
(‘C:\’, ‘Users’, ‘Administrator’, ‘Desktop’, ‘test.py’)
drive
盘符
C:
root
根路径
\
anchor
盘符 + 根路径
C:\
stem
当前路径的主文件名
test
name
当前路径的完整文件名
test.py
suffixes
当前路径的所有后缀名
[’.py’]
suffix
suffixes的最后一个元素
.py
parents
全部父路径
<PureWindowsPath.parents>
parent
上级路径
C:\Users\Administrator\Desktop
PurePath对象的方法
方法
作用
返回值
is_absolute()
判断是否为绝对路径
bool值
match(pattern)
判断是否匹配指定通配符
bool值
joinpath(*other)
连接多个路径,与【/】等效
在后面增加路径
relative_to(*other)
当前路径去除基路径
去除前面一部分路径
with_name(name)
重命名
with_suffix(name)
更改/添加后缀名
a = PurePath("C:/Users/Administrator/Desktop/test.py")
a.is_absolute() #True
a.match('*test*') #True
a.joinpath('11', '22')
#'C:/Users/Administrator/Desktop/test.py/11/22'
a.relative_to('C:/')
#'Users/Administrator/Desktop/test.py'
a.with_name('new_name')
#'C:/Users/Administrator/Desktop/new_name'
a.with_suffix('.new_suffix')
#'C:/Users/Administrator/Desktop/test.new_suffix'
Path
Path对象的方法
方法
作用
exists()
判断路径是否存在
iterdir()
返回目录下所有子目录和文件
glob(pattern)
返回目录、子目录下,匹配指定模式的所有文件
a = Path("C:/Users/Administrator/Desktop/test.py")
a.exists() #True
b = Path("C:/Users/Administrator/Desktop"
for i in b.iterdir(): print(i)
#返回桌面所有文件的完整路径,如:C:\Users\Administrator\Desktop\~$时间.docx
for i in b.glob('*.docx'): print(i)
#返回符合pattern的路径,如:C:\Users\Administrator\Desktop\~$6.docx
# tempfile 临时目录
临时目录只存在于内存,程序退出时会被删除
方法
作用
TemporaryDirectory (suffix=None ,prefix=None, dir=None)
生成临时目录
gettempdir()、gettempdirb()
获取系统的临时目录,字符串或字节串
gettempprefix()、gettempprefixb()
返回用于生成临时文件的前缀,字符串或字节串