簡體   English   中英

如何從命令行導出數據(這是Python程序的結果)?

[英]How to export data (which is as result of Python program) from command line?

我正在使用Python程序,並且在命令行上有結果。

現在,我需要對結果進行分析,因此我需要將所有結果以任何格式導出,例如SQL,Excel或CSV格式。

有人可以告訴我該怎么做嗎?

import csv
x1=1 x2=2
while True:
    show = [ dict(x1=x1+1 , x2=x2+2)]
    print('Received', show )
    with open('large1.csv','w') as f1:
        writer=csv.writer(f1, delimiter=' ',lineterminator='\n\n',)
        writer.writerow(show)
    x1=x1+1
    x2=x2+1 

在這里,這是無限循環,我想要一個包含2列x1和x2的csv文件。 並定期定期更新x1和x2的所有值(1行重復1次)

但是通過這段代碼,我得到了一個名為“ large1.csv”的csv文件,它僅包含一行(x1和x2的最新更新值)。

因此,如何像python中那樣獲取x1和x2的所有值。

看看open()文檔

模式w截斷文件,這意味着它將替換內容。 由於您調用了每個循環迭代,因此您將不斷刪除該文件並將其替換為新文件。 模式a追加到文件, 可能就是您想要的。 您也可以考慮在循環外打開文件,在這種情況下, w可能是正確的模式。

只需使用csv格式,它就可以輕松導入Excel,而python標准庫開箱即可支持csv。 @請參閱python-csv

解決此問題的一種方法是使用CSV模塊 ,特別是Writer對象 ,將輸出寫入CSV文件(甚至可以代替寫入stdout )。 該文檔有幾個示例,包括以下示例:

import csv
with open('some.csv', 'w', newline='') as f:
    writer = csv.writer(f)
    writer.writerows(someiterable)

然后,如果需要的話,您應該可以輕松地在Excel中導入CSV文件。

暫無
暫無

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

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