[英]How to print the output in different colums of a csv file?
我想在csv
文件的不同列中打印我的程序的輸出。 實際輸出僅顯示在用 excel 軟件打開的csv
文件中的一個單元格中。 此外,數字結果出現在方括號中(我不想要)。 我想在不同的單元格中繪制我的結果,一個並排。 例如,第一個單元格“文本”,第二個單元格“數字”,第三個單元格“文本”。
我嘗試了不同的分隔符,如“ ”、“、”,但沒有成功。
import numpy as np
# DATA
width=0.66
# WRITING THE DATA
wii=np.empty([1,1])[0]
wii[0]=round(width,3)
Width=[['Width' +str(wii)+ ' [m]']]
with open('Output.csv', 'w', newline='') as csvFile:
thewriter = csv.writer(csvFile, delimiter=',')
thewriter.writerows(Width)
我的預期結果將是以下結果:Width 0.66 [m]('Width、0.66 和 [m] 分別位於三個不同的單元格中')
相反,我得到:
Width [0.66] [m] ('Where, Width, [0.66] 和 [m] 位於同一個單元格中)
如何解決這個問題?
為了實現這一點,需要改變一些事情:
wii
列表,而不是對象,所以你總是有方括號。 我已經解決了。writerow
總是將東西放入不同的單元格中,所以我將其更改為write
以下腳本輸出:
import numpy as np
import csv
#DATA
width=0.66
#WRITING THE DATA
wii=np.empty([1,1])[0]
wii[0]=round(width,3)
#print(wii[0]) prints 0.66 no bracket
#Width=['Width' +str(wii)+ 'm'] <- OP old
Width = ["Width", str(wii[0]), "[m]"] # <- NEW
with open('Output.csv', 'w', newline='') as csv_Reader:
# Change from writerow
csv_Reader.write(",".join(Width))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.