簡體   English   中英

如何在 CSV 的不同列中從 python 寫入 output?

[英]how to write output from python in different columns in CSV?

我在第一列中有 list1 的 output,我希望在第二列中有 list2。 我怎樣才能做到這一點? 或者有人有更好的解決方案嗎? list1 用於目錄中由 os.mkdir(directory) 自動生成的所有文件夾(大約 200+)。 現在我想在第二列檢查每個文件夾中的文件 with.raw.txt 並在第二列打印是/否。 在這里你可以在 csv 中看到我的 output

´   
    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`

這是否符合您的要求?:

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"])


這應該可以解決問題。

您始終可以創建一個字典列表,將值存儲在其中,然后將其寫入 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)

要創建 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"])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM