Python如何獲取當前路徑并列出當前路徑下的所有文件
Python獲取當前路徑并列出當前路徑下的所有文件
問題描述
因為需要讀取多個文件,但是如果一個一個地輸入名字和讀取,效率就會異常地低,作為程序員,怎么能忍受這樣的折磨呢???
所以,現(xiàn)在問題是如何獲取當前路徑,并獲取指定目錄下的所有文件,然后對每一文件進行單獨處理呢?
解決方案
首先獲取當前路徑,使用下面的代碼:
import os path = os.getcwd()#獲取當前路徑 print(path)
輸出:
'/home'
然后獲取當前路徑下的文件名
all_files = [f for f in os.listdir(path )]#輸出根path下的所有文件名到一個列表中 #對各個文件進行處理 print(all_files)
輸出:
[ ‘tmp’,'user1']
由上即可獲得指定目錄下的所有文件及文件夾列表了。
心得:
python支持很多的os中指令,需要在使用的過程中慢慢熟悉了。。。
python 遞歸獲取目錄(文件夾)下的所有文件路徑
例1:基本原理1
# 獲取目錄下的文件名和文件夾名 import os dir_path = './' file_list = os.listdir(dir_path) print(file_list)
輸出結果:
[‘request_data’, ‘temp01.py’, ‘testcase’, ‘venv’]
注:有文件,也有文件夾
例2:僅獲取當前目錄下的文件路徑、文件夾路徑
def get_filepath(dir_path):
? ? file_list = os.listdir(dir_path)
? ? for file in file_list:
? ? ? ? file_path = os.path.join(dir_path, file) ?# 拼接成路徑
? ? ? ? print(file_path)
if __name__ == '__main__':
? ? get_filepath('./')輸出結果:
./request_data
./temp01.py
./testcase
./venv
例3:工作中實例
# 遞歸獲取目錄(文件夾)下的所有文件路徑
import os
def get_filepath(dir_path, list_name):
? ? """遞歸獲取目錄下(文件夾下)所有文件的路徑"""
? ? for file in os.listdir(dir_path): ?# 獲取文件(夾)名
? ? ? ? file_path = os.path.join(dir_path, file) ?# 將文件(夾)名補全為路徑
? ? ? ? if os.path.isdir(file_path): ?# 如果是文件夾,則遞歸
? ? ? ? ? ? get_filepath(file_path, list_name)
? ? ? ? else:
? ? ? ? ? ? list_name.append(file_path) ?# 保存路徑
? ? return list_name
res = get_filepath('./')
for i in res:
?? ?print(i)輸出結果:
…/log\bsp2_1_20210708.log
…/log\bsp2_1_20210709.log
…/log\bsp2_1_20210710.log
…/log\bsp2_1_20210711.log
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
微軟開源最強Python自動化神器Playwright(不用寫一行代碼)
這篇文章主要介紹了微軟開源最強Python自動化神器Playwright(不用寫一行代碼),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-01-01
python 讀寫、創(chuàng)建 文件的方法(必看)
下面小編就為大家?guī)硪黄猵ython 讀寫、創(chuàng)建 文件的方法(必看)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09

