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)