第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將 Python 列表逐行寫入 csv 文件

將 Python 列表逐行寫入 csv 文件

莫回?zé)o 2023-08-08 16:00:54
我有一個這樣的清單[[1.75], [4.75]][[2.5], [2.5]][[3.5], [3.5]][[4.0], [4.0]]我想將其寫入 csv 文件,例如1.75, 4.752.5, 2.53.5, 3.54.0, 4.0當(dāng)我嘗試使用模塊writerows方法時csv,它被保存為1.754.752.52.53.53.54.04.0
查看完整描述

2 回答

?
慕無忌1623718

TA貢獻1744條經(jīng)驗 獲得超4個贊

您需要將每一行解壓到一個平面列表中。


import csv


my_list = [

    [[1.75], [4.75]],

    [[2.5], [2.5]],

    [[3.5], [3.5]],

    [[4.0], [4.0]],

    ]


with open("my.csv", "w") as f:

    writer = csv.writer(f)


    for row in my_list:

        writer.writerow([l[0] for l in row])

或者,如果愿意,for可以用生成器表達式替換循環(huán),以便您可以writerows像當(dāng)前一樣使用:


    writer.writerows([l[0] for l in row] for row in my_list)


查看完整回答
反對 回復(fù) 2023-08-08
?
子衿沉夜

TA貢獻1828條經(jīng)驗 獲得超3個贊

這是一個可能的解決方案:


import csv


lst = [[[1.75], [4.75]],

       [[2.5], [2.5]],

       [[3.5], [3.5]],

       [[4.0], [4.0]]]


with open('file.csv', 'w') as f:

    writer = csv.writer(f)

    w.writerows([[x[0] for x in lst] for line in lst])

或者,您可以使用以下方法來扁平化您的列表itertools.chain:


from itertools import chain

...

w.writerows([list(chain(*line)) for line in lst])


查看完整回答
反對 回復(fù) 2023-08-08
  • 2 回答
  • 0 關(guān)注
  • 211 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號