我一直在遇到以下問題,我需要聲明輸入文件的input_fields,並且我只是將文件複製並粘貼到我的變量中,添加逗號和引號。例如:使用python自動化csv文件中的input_fields聲明
input = ("First Name", "Middle Name", "Last Name")
我想這個過程自動化,使我的程序可以有這樣一行:
input = inputize.function1("name_of_file.csv")
當功能1採用輸入文件(「name_of_file.csv」),並返回,在這種情況下是三個字符串的元組(「名字」,「中間名」,「姓氏」)。正如你可以想象,這是一個痛苦,因爲我必須爲許多文件手動執行此操作,其中許多文件有很多列...
我想我想要的基本結構看起來像下面這樣,但我一直認爲必須有一種非常簡單的方法來獲取csv文件的第一行,將每列列標題分開,並在其周圍放置引號,並在其後放置逗號,然後將整個事件存儲爲元組...
def function1(input_file):
with open(input_file, "rb") as infile:
for line in infile:
split = line.split(",")
for item in split:
input = '"' + item + '","
return input
我希望這對其他人也有幫助,因爲它看起來像一個普通的足夠/超級煩人的手動任務,並且肯定會很感謝任何指導。
附錄
我一直在寫這樣的代碼:
input_fields = ("First Name", "Middle Name", "Last Name")
reader = csv.DictReader(infile, fieldnames = input_fields)
每低於你的答案,這似乎是最上面一行是沒有實際意義,因爲所有我需要做的就是:
reader = csv.DictReader(infile)
謝謝你!完美的作品。只要我能接受你的答案(6分鐘),我就會這樣做。 – user7186