import os
#獲取系統名稱
print(f'系統的名稱{os.name}') #win系統的名稱nt
#獲取當前文件的絕對路徑
print(f'獲取當前文件的絕對路徑:{os.getcwd()}')
'''
絕對路徑:從具體的盤符開始到指定文件結束
相對路徑:
參照物的----當前的文件
路徑盤符
.----當前文件所在的目錄
..--當前文件所在的上一級目錄
'''
#獲取系統環境變量
print(f'系統環境變量:{os.environ}')
#獲取指定字段的環境變量
print(f'系統環境變量path對應的內容{os.environ.get("path")}')
#在a下創建一個文件夾,叫test
os.mkdir(r"..\test")
#在指定路徑下創建文件夾,如文件夾已存在報錯
try:
os.mkdir(r'..\test')
except Exception as e:
print(e)
#創建多級目錄
os.makedirs(r'..\a\b')
#刪除目錄
os.rmdir(r'..\a\b')
os.rmdir(r'..\a')
#獲取指定目錄下的直接子文件名
name = os.listdir(r"..\test")
print(name)
#刪除文件
os.remove(r'..\test\啦啦')
#對文件重命名
#os.rename(r'..\test\啦啦',r'..\test\lala')
#獲取指定文件絕對路徑
print(f'.對應的文件的絕對路徑{os.path.abspath(r"..")}')
#獲取文件的擴展名 ---結果時一個元祖
#如果給定的是一個文件路徑 元祖的第二個至就是文件的擴展名
pach = r'..\test\lala'
file_ext = os.path.splitext(pach)
print(file_ext)
#如果給的是文件夾 元祖中第二個值就是一個空字符串
pach = r'..\test'
file_ext = os.path.splitext(pach)
print(file_ext)
#獲取文件名 ---文件傳遞的時候使用的比較多
pach = r'..\test\lala'
file_ext = os.path.basename(pach)
print(file_ext)#lala
#獲取指定文件所在的文件夾
file_dir = os.path.dirname(pach)
print(file_dir)#..\test
#獲取文件下的字節數
file_dir = os.path.getsize(pach)
print(file_dir)#18
#判斷文件是否存在
print(f'文件是否存在{os.path.exists(pach)}')#文件是否存在True
#判斷決定的路徑是否是一個文件
print(os.path.isabs(pach))
#拼接路徑
#獲取指定文件夾下的自文件名
super_path = r'..\test'
sub_file_names = os.listdir(super_path)
print(sub_file_names)
for sub_file_name in sub_file_names:
join_path = os.path.join(sub_file_name,super_path)
print(join_path)#lala\..\test
1 案例
2 #使用遞歸,獲取只當目錄下的直接子文件
3 def get_file(path):
4 #判斷path對應的文件是否存在
5 if os.path.exists(path):
6 if os.path.isdir(path):
7 sub_file =os.listdir(pach)
8 #遍歷列表
9 for file_name in sub_file:
10 #拼接文件路徑
11 join_path =os.path.join(path,file_name)
12 #判斷這個路徑對應文件是否是txt
13 if os.path.isfile(join_path):
14 print(join_path)
15 elif os.path.isfile(join_path):
16 get_file(join_path)
17
18 else:
19 print('我們要操作的文件夾')
20 else:
21 print("該路徑對應的文件不存在")
22
23 #獲取后綴為txt文件
24 def get_file(path):
25 #判斷path對應的文件是否存在
26 if os.path.exists(path):
27 if os.path.isdir(path):
28 sub_file =os.listdir(pach)
29 #遍歷列表
30 for file_name in sub_file:
31 #拼接文件路徑
32 join_path =os.path.join(path,file_name)
33 #判斷這個路徑對應文件是否是txt
34 if os.path.splitext(join_path)[-1] == ".txt":
35 print(join_path)
36 elif os.path.isfile(join_path):
37 get_file(join_path)
38
39 else:
40 print('我們要操作的文件夾')
41 else:
42 print("該路徑對應的文件不存在")
43 '''
44 文件操作--文件是程序外的資源,想讓程序與文件進行交互,需要建立程序和文件
45 之間的通道,當操作王弼之后,避免產生多余垃圾,需要關閉通道
46 '''