python中如何對(duì)文件夾中的路徑進(jìn)行循環(huán)遍歷
使用os.path.join()函數(shù)
-
一個(gè)情景
當(dāng)我們需要處理數(shù)據(jù)時(shí),數(shù)據(jù)保存在txt文件,或者語(yǔ)音處理wav文件
并且以后多個(gè)文件,其代表著某一任務(wù)下不同參數(shù)得到的結(jié)果。
所以我們需要使用路徑來(lái)讀取文件,
如果需要一次性讀取多個(gè),那么則循環(huán)遍歷。
這里需要用到 os.path.join 操作
舉個(gè)例子,在當(dāng)前路徑的test文件夾中存在著
test_result_1.txt
test_result_2.txt
test_result_3.txt
test_result_4.txt
四個(gè)txt文件
test文件目錄
我們現(xiàn)在希望遍歷
run.py文件
import os
cnt = 1 #第一個(gè)txt文件的末尾為1,所以設(shè)置cnt為1
TEMP = []
for i in range(0,4): #這里循環(huán)4次,因?yàn)槲募A中有4個(gè)txt文件
temp_name = "test_result_" + str(cnt) + ".txt"
cnt = cnt + 1
prexfix_path = "/test/" #這里是指所在文件夾的路徑,
txt_path = os.path.join(prexfix_path, temp_name)
#下面將txt_path輸入到需要的函數(shù)中,假設(shè)本例中是txt_read()函數(shù)的參數(shù)是txt文件路徑
# run()函數(shù)返回的結(jié)果保存到result中
result = txt_read(txt_path)
#將每次的結(jié)果result添加到TEMP中, 從而可以使得
TEMP.append(result)
print(TEMP)
join函數(shù)的用到的地方還有很多, 此處記錄一下關(guān)于os.path.join()應(yīng)用于遍歷路徑。
更新一種方法:
python中 f“” 的用法
可以直接使用f“test/{}.py”
temp = "test_result_1"
PATH = f"test/{temp}.txt"
print(PATH)
# 輸出:test/test_result_1.txt
這里直接用了一個(gè)括號(hào),就可以把temp加進(jìn)去了,等于直接使用了參數(shù)
用于for循環(huán)同樣好用,很方便的用于path。
下面介紹他背后的一些知識(shí):
str.format()
我們?cè)谑褂胮rint,之前會(huì)使用到,format
一般是這樣的:
name = "xiaoming"
age = 18
print("hi, i am {}. i am {}".format(name, age))
# 輸出: hi, i am xiaoming. i am 18
但是當(dāng)string中的參數(shù)十分的多的時(shí)候,我們?cè)趂ormat()內(nèi)容較長(zhǎng),這樣看起來(lái)是比較冗長(zhǎng)的,于是出現(xiàn)了f-string文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-561324.html
name = "xiaoming"
age = 18
print(f"hi, i am {name}. i am {age}")
# 輸出: hi, i am xiaoming. i am 18
參考:
https://blog.csdn.net/zxyhhjs2017/article/details/90079516文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-561324.html
到了這里,關(guān)于python 使用os.path.join對(duì)文件夾中的文件進(jìn)行循環(huán)遍歷讀取的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!