簡體   English   中英

為什么在Python中讀取csv文件時會得到字符串而不是字典?

[英]Why am I getting a string instead of a dictionary while reading a csv file in Python?

我正在使用CSV文件編寫字典:

self.idSelf += 1
self.tweet["tweet"] = tweetText
self.tweet["id"] = id
self.tweet["sequence"] = self.idSelf
self.tweet["created_at"] = created_at
with open('#KXIPvMI-2018-05-04.csv', 'a') as csv_file:
     writer = csv.writer(csv_file)
     a = [self.tweet]
     print a[0]['tweet']
     writer.writerow([self.tweet])

讀取此文件時,我得到一個length = 1的列表。我得到了通過寫row = info[0]保存的整個字典。 但是當我得到type(row) ,它是str而不是字典。 為什么會這樣,又如何獲得字典?

使用csv.DictReader和csv.DictWriter,查看示例代碼

import csv

di = {}
di["id"] = 1
di["val"] = "val"

with open("test.csv","a") as csv_file:
    writer = csv.DictWriter(csv_file,di.keys())
    writer.writerow(di)

with open("test.csv") as csv_file:
    reader = csv.DictReader(csv_file,di.keys())
    for row in reader:
        print row["id"]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM