[英]How to write a dictionary with multiple keys, each with multiple values to a csv in Python?
[英]How to write dictionary keys and corresponding values to each line to a file
State_Dict = {"Texas": ["San Antonio, Austin, Houston"] ,
"California": ["San Diego, Los Angeles, San Francisco"],
"Florida": ["Miami", "Orlando", "Jacksonville"]}
with open("state.txt", "w") as state:
for key, value in State_Dict:
state.write(key, value)
目標:我需要以以下格式將鍵和值寫入文本文件:
Texas
San Antonio
Austin
Houston
California
San Diego
Los Angeles
San Francisco
Florida
Miami
Orlando
Jacksonville
到目前為止,我收到以下錯誤:
Traceback (most recent call last):
File "snip/testBed_2.py", line 7, in <module>
for key, value in State_Dict:
ValueError: too many values to unpack (expected 2)
Process finished with exit code 1
我該如何工作?
您可以使用第二個循環遍歷您的值,如下所示。 由於您的值是一個包含單個元素的列表,因此您可以使用[0]
索引來獲取城市名稱,然后使用,
(逗號)作為分隔符將其分割。
您的某些列表將所有城市都作為一個字符串,而某些列表則具有單獨的城市名稱。 因此,您可以使用if語句進行檢查。 v.strip()
從名稱中刪除空格。
with open("state.txt", "w") as state:
for key, value in State_Dict.items():
state.write(key + '\n')
if len(value) == 1:
for v in value[0].split(','):
state.write(v.strip() + '\n')
else:
for v in value:
state.write(v.strip() + '\n')
產量
Texas
San Antonio
Austin
Houston
California
San Diego
Los Angeles
San Francisco
Florida
Miami
Orlando
Jacksonville
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.