python--pathlib--路徑操作


from pathlib import Path

p1=Path(__file__)  #獲取當前文件路徑
#D:\ss\test1.py

p2 = Path.cwd()  #獲取當前文件的目錄
#D:\ss

p3=Path.cwd().parent  #當前文件目錄的父目錄
#D:\
p=Path.cwd().joinpath('aa')  #路徑拼接
#D:\ss\aa
st=Path(__file__).stat()  #獲取當前文件的信息
#os.stat_result(st_mode=33206, st_ino=6473924464701313, st_dev=1559383105, st_nlink=1, st_uid=0, st_gid=0, st_size=300, st_atime=1578661629, st_mtime=1578661629, st_ctime=1576891792)
a=st.st_size   #文件大小,單位:字節

p=p1.parent  #p1的父路徑
z=p1.parents #p的所有祖輩路徑,返回一個對象
# for i in z:
#     print(i)
pp = Path('D:/python')  #創建一個path對象
a=pp.is_file()  #判斷pp是否文件
a=pp.is_dir()  #判斷pp是否目錄
a=p2.is_absolute()  #判斷p2是否是絕對路徑
a=p2.match('d:\*')  #判斷p2是否符合某一個模式
a=p2.glob('*.py') #在p2下搜索符合某一模式的文件--只搜索p2目錄
a=p3.glob('**\*.py')  #在p3下搜索符合某一模式的文件--包括所有子目錄
# a=p3.rglob('*.py')  #在p3下搜索符合某一模式的文件--包括所有子目錄
# for i in a:
#     print(i)

#pp.mkdir()  #創建目錄--如果已經存在就拋出異常
a=p1.name  #獲取文件名
#test1.py
a=p1.suffix #獲取后綴
#.py
a=pp.stem  #目錄最后一個部分,不帶后綴
a=pp.with_name('vocab.txt')  #替換最后一個部分並返回一個新的路徑
a=p1.with_suffix('.lm') #替換擴展名,返回新的路徑,擴展名存在則不變
#D:\ss\test1.lm
dir=Path('d:/')
a=dir.iterdir()  #所有文件與文件夾路徑的迭代器--只返回本目錄的不包括子目錄
# for i in a:
#     print(i)

file=Path('D:/ss.lm')
#file.rename('d:/cc.txt')  #改名並移動-文件與文件夾都可以
#如果file不存在就拋出異常
#移動必須是同一驅動器
#目標文件已經存在時拋出異常

file.replace('d:/cc.txt')  #改名並移動-文件與文件夾都可以
#與rename類似,目標文件或文件夾已經存在時則覆蓋原文件

print(a)

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM