Python 如何将字典写入csv文件?
字典如下所示Python 如何将字典写入csv文件?,python,dictionary,Python,Dictionary,字典如下所示 res = {'Qatar': ['68.61994212', '59.03245947', '55.10905996'], 'Burundi': ['0.051012487', '0.048311391', '0.046681908'], 'Japan': ['9.605144835', '9.247590692', '9.542878595', ]} 我想删除csv文件中的“[]” 我想得到输出csv作为 卡塔尔68.61994212 59.03245947 55.10905
res = {'Qatar': ['68.61994212', '59.03245947', '55.10905996'],
'Burundi': ['0.051012487', '0.048311391', '0.046681908'],
'Japan': ['9.605144835', '9.247590692', '9.542878595', ]}
我想删除csv文件中的“[]”
我想得到输出csv作为
卡塔尔68.61994212 59.03245947 55.10905996
布隆迪0.051012487 0.048311391 0.046681908
日本9.605144835 9.247590692 9.542878595请尝试以下代码。您得到“[]”的原因是您可能试图按原样编写字典的val,这是一个列表。相反,您需要检索列表中的值,然后将其写入
import csv
res = {'Qatar': ['68.61994212', '59.03245947', '55.10905996'],
'Burundi': ['0.051012487', '0.048311391', '0.046681908'],
'Japan': ['9.605144835', '9.247590692', '9.542878595', ]}
with open('./result.csv', 'w') as res_file:
csv_writer = csv.writer(res_file)
for k, v in res.items():
res_val = [x for x in v]
res_val.insert(0, k)
csv_writer.writerow(res_val)
输出:
文件result.csv的内容如下:
Burundi,0.051012487,0.048311391,0.046681908
Japan,9.605144835,9.247590692,9.542878595
Qatar,68.61994212,59.03245947,55.10905996
请尝试下面的代码。您得到“[]”的原因是您可能试图按原样编写字典的val,这是一个列表。相反,您需要检索列表中的值,然后将其写入
import csv
res = {'Qatar': ['68.61994212', '59.03245947', '55.10905996'],
'Burundi': ['0.051012487', '0.048311391', '0.046681908'],
'Japan': ['9.605144835', '9.247590692', '9.542878595', ]}
with open('./result.csv', 'w') as res_file:
csv_writer = csv.writer(res_file)
for k, v in res.items():
res_val = [x for x in v]
res_val.insert(0, k)
csv_writer.writerow(res_val)
输出:
文件result.csv的内容如下:
Burundi,0.051012487,0.048311391,0.046681908
Japan,9.605144835,9.247590692,9.542878595
Qatar,68.61994212,59.03245947,55.10905996
试试这个:
[k,+元组[k]表示k在res中]
您将获得这样的元组列表,您可以将其写入csv文件:
[‘布隆迪’、‘0.051012487’、‘0.048311391’、‘0.046681908’、‘日本’、‘9.605144835’、‘9.247590692’、‘9.542878595’、‘卡塔尔’、‘68.61994212’、‘59.03245947’、‘55.10905996’]
试试这个:
[k,+元组[k]表示k在res中]
您将获得这样的元组列表,您可以将其写入csv文件:
[‘布隆迪’、‘0.051012487’、‘0.048311391’、‘0.046681908’、‘日本’、‘9.605144835’、‘9.247590692’、‘9.542878595’、‘卡塔尔’、‘68.61994212’、‘59.03245947’、‘55.10905996’]
除了答案之外,如果允许您使用,那么您可以使用panda-s to_csv功能在一行中创建csv
import pandas as pd
df = pd.DataFrame(res)
df.to_csv('my_result.csv', index=False)
除了回答之外,如果允许您使用,那么您可以使用panda-s to_csv功能只在一行中创建csv
import pandas as pd
df = pd.DataFrame(res)
df.to_csv('my_result.csv', index=False)
熊猫会这样做:
import pandas as pd
res = {'Qatar': ['68.61994212', '59.03245947', '55.10905996'],
'Burundi': ['0.051012487', '0.048311391', '0.046681908'],
'Japan': ['9.605144835', '9.247590692', '9.542878595', ]}
df = pd.DataFrame.from_dict(res, orient='index')
df.to_csv('res.csv', header=False)
确保在创建数据帧时使用orient='index',以便在csv中获得正确的行索引
Qatar,68.61994212,59.03245947,55.10905996
Burundi,0.051012487,0.048311391,0.046681908
Japan,9.605144835,9.247590692,9.542878595
熊猫会这样做:
import pandas as pd
res = {'Qatar': ['68.61994212', '59.03245947', '55.10905996'],
'Burundi': ['0.051012487', '0.048311391', '0.046681908'],
'Japan': ['9.605144835', '9.247590692', '9.542878595', ]}
df = pd.DataFrame.from_dict(res, orient='index')
df.to_csv('res.csv', header=False)
确保在创建数据帧时使用orient='index',以便在csv中获得正确的行索引
Qatar,68.61994212,59.03245947,55.10905996
Burundi,0.051012487,0.048311391,0.046681908
Japan,9.605144835,9.247590692,9.542878595
可能重复的@DIG然后将此答案标记为正确答案是有意义的。@DIG然后将此答案标记为正确答案是有意义的。