簡體   English   中英

在單元格csv python中寫一個列表

[英]write a list in a cell csv python

我有一個要在CSV字段中寫入的字符串列表。 我在另一個程序中讀到了這個列表。 但是當我讀回它時,它被讀作字符串而不是列表。 代碼到目前為止

import csv  
import codecs
def write_csv(outputcsv, rows, fieldnames):
            try:
                        restval=""
                        extrasaction="ignore"
                        dialect="excel"
                        outputfile = codecs.open(outputcsv + ".csv",'w')
                        csv_writer = csv.DictWriter(outputfile, fieldnames, restval, extrasaction, dialect, quoting=csv.QUOTE_NONNUMERIC)
                        csv_writer.writeheader()
                        csv_writer.writerows(rows) 
                        outputfile.close()
            except csv.Error :
                            print "outputcsverror"


def read_csv(inputcsv):   
                try:
                    inputfile = codecs.open(inputcsv+ ".csv",'r') 
                    result = list(csv.DictReader(inputfile))
                    return result              
                except csv.Error:
                            print "inputcsverror" 





if __name__ == '__main__':
            rowdict=dict()
            Allrows=list()
            rowdict["stringlist"]=["Abc", "Def"]
            Allrows.append(rowdict)
            fieldnames=["stringlist"]
            outputcsv="teststrings"
            write_csv(outputcsv, Allrows, fieldnames)
            listRows=read_csv(outputcsv)
            print listRows[0]["stringlist"][0]

當我訪問listRows [0] [“stringlist”]時,它返回一個字符串。 以上打印給出[
與Abc相比

您的[“Abc”,“Def”]位於“stringlist”名稱下的同一字段中。 如果你想要列表結果。 嘗試

your_list = listRows[0]["stringlist"].split(',')

暫無
暫無

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

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