感謝百萬讀者閱讀我的文章以及您可能提供的任何信息。將數組寫入字典列表
我試圖打印到一個CSV文件,並擁有一切工作,直到涉及到打印。我試圖打印一個簡單的字典列表,並完美的作品,當我輸入我的數組名稱時,它不會返回一個錯誤,所以邏輯說我做的是正確的,但是當我試圖打印到一個文件時,它只會打印數組列表中的第一項,並將其打印出來3次。我確信我犯了一個愚蠢的錯誤,但似乎無法在網上找到答案。爲了記錄,這不是一項家庭作業,這只是我試圖自己學習的東西。
import csv
n = 0
product = ['Beer', 'Wine', 'Whiskey']
item = ['Lager', 'Red', 'Bells']
size = ['Pint', 'Bottle', 'Single']
price = [5.50, 17.50, 5.50]
receipt_dict = {'Product': product[n],
'Item': item[n],
'Size': size[n],
'Price': price[n]}
headings = {'Product',
'Item',
'Size',
'Price'}
receipt = open('dict.csv', 'w')
w = csv.DictWriter(receipt, fieldnames=headings, dialect='excel')
w.writeheader()
while len(product) != n:
w.writerow(receipt_dict)
n += 1
receipt.close()
如果任何人能夠指出我在正確的方向,我會很大。
親切的問候
馬修
要初始化'receipt_dict'與價值觀和不改變這些值。即如果在代碼開始時n = 1,則產品[n] =='啤酒'。因爲您正在迭代n,並不意味着您正在迭代值 –