簡體   English   中英

從.csv導入/導出到多個python列表?

[英]Importing/Exporting from .csv to multiple python lists?

我有兩個列表,其中一個是值的簡單列表,另一個是列表的列表,每個元素都有兩個值。 如何在運行另一個python腳本時將這兩個列表分別存儲在單個.csv表中並導入?

這是一個示例:

list_a = [0, 0, 0, 0, 0, 0, 0]
list_b = [[0,0], [0,0], [0,0], [0,0], [0,0]]

我已經試過了:

with open("output.csv", "w", newline="") as a:
    writer = csv.writer(a)
    writer.writerows(list_a)
    writer.writerows(list_b)

但是list_a和list_b存儲在同一列上,而list_b的值而不是(0,0)則存儲為(,0,“,”,0,)。

所以我嘗試了:

writer = csv.writer(a, quoting=csv.QUOTE_NONE)

但這給出了一個錯誤:

_csv.Error: need to escape, but no escapechar set

所以我做了:

writer = csv.writer(a, quoting=csv.QUOTE_NONE, escapechar='\\')

但是然后我得到像(,0,\\ ,, 0,)這樣的值嗎?

我需要它的格式,可以將list_a和list_b導出到.csv文件中,並按原樣導入並在相同或其他腳本中使用/修改。 導出時我在哪里出錯,如何將其作為Python腳本的列表導入回來? 完成此操作的最簡單的Python方法是什么?

提前致謝 :)

本示例使用izip(而不是zip)來避免創建新列表並將其保留在內存中。 它還避免使用任何循環,因此代碼簡短明了。<.em>

import csv
from itertools import izip

with open('output.csv', 'w') as m:
    writer = csv.writer(m)
    writer.writerows(izip(list_a, list_b))

暫無
暫無

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

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