我在第一列中有 list1 的輸出,我希望在第二列中有 list2。我怎樣才能做到這一點?或者有人有更好的解決方案嗎?list1 用于目錄中由 os.mkdir(directory) 自動生成的所有檔案夾(大約 200 )。現在我想在第二列檢查每個檔案夾中的 .raw.txt 檔案并在第二列列印是/否。在這里你可以看到我在 csv 中的輸出
′
for list1 in fieldnames:
for path, dir_folder, files in os.walk(path):
for files in dir_folder:
w.writerow(files.split())
for list2 in fieldnames:
for files in os.listdir(path):
try:
if os.path.exists("*\\raw.txt"):
print("Yes")
else:
print("No")
except:
continue`
uj5u.com熱心網友回復:
這是否符合您的要求?:
for path, dir_folder, files in os.walk(path):
for file in files:
w.writerow([dir_folder, "Yes" if file[-8:] == ".raw.txt" else "No"])
uj5u.com熱心網友回復:
這應該可以解決問題。
您始終可以創建一個字典串列,將值存盤在其中,然后將其寫入 csv。
這是一個執行此操作的代碼
import os
import csv
result_list = []
for path, dir_folder, files in os.walk('./test_folder'):
raw_exists = "No"
for file_name in os.listdir(path):
if os.path.isfile(os.path.join(path,file_name)) and file_name.endswith('raw.txt'):
raw_exists="Yes"
break
row_dict={
"Folder Name": os.path.basename(path),
"Raw exists": raw_exists
}
result_list.append(row_dict)
with open('test.csv', 'w', encoding='utf8', newline='') as output_file:
fc = csv.DictWriter(output_file, fieldnames=result_list[0].keys())
fc.writeheader()
fc.writerows(result_list)
uj5u.com熱心網友回復:
要創建顯示哪些檔案夾包含檔案結尾的 CSV 檔案,raw.txt
您可以執行以下操作:
import csv
import os
path = '/'
with open('output.csv', 'w', newline='') as f_output:
csv_output = csv.writer(f_output)
for dirpath, dirnames, filenames in os.walk(path):
for filename in filenames:
if filename.endswith("raw.txt"):
csv_output.writerow([dirpath, "Yes"])
break
else:
csv_output.writerow([dirpath, "No"])
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/507963.html
標籤:Python python-3.x 列表 CSV csvhelper
上一篇:串列理解平面串列?