[英]Printing dictionary key as many times as its value
我有一個包含以下鍵值配對的字典:
mango 2
orange 3
banana 4
根據該值,我希望將密鑰打印多次。 xlsx 文件中的預期輸出:(僅限第一列)
mango
mango
orange
orange
orange
banana
banana
banana
banana
我嘗試了以下方法:
import xlsxwriter
workbook=xlsxwriter.Workbook('TEST.xlsx')
sheet=workbook.add_worksheet()
row=0
for key in list(values.keys()):
for i in range(int(values[key])):
sheet.write_column(row,0,key)
row=row+1
workbook.close()
我得到以下內容:
我究竟做錯了什么? 感謝幫助。
根據xlsxwriter
的文檔。
write_column() 方法可用於一次性寫入數據列表。 這對於將數據庫查詢的結果轉換為 Excel 工作表很有用。 為數據的每個元素調用 write() 方法。
如果您將數據作為列表傳遞,則在循環之后它將正確寫入您的數據。
column = []
for key, value in d.items():
for i in range(value):
column.append(key)
sheet.write_column(row = 0, col = 0, data = column)
不包括輸出到筆記本的代碼,應該類似於您已經完成的內容:
def get_column_keys(storeFruits, val):
reps = []
for key in storeFruits.keys():
if storeFruits[key] == val:
reps.append(key)
return reps
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.