2013-06-19 199 views
-1

如何打開現有的excel文件,寫入並將其保存爲相同的文件名。以前的數據都不應該丟失,應該保存新的數據。打開excel文件並寫入python

的僞代碼將是如下:

open excel file 
write data to last row 
save excel file 
+1

什麼文件格式? .csv會起作用嗎? – mitchfish36

+0

@ mitchfish36只要沒有數據丟失,excel的任何文件格式都可以工作 – user1681664

+0

取決於 - 一些庫默默丟棄數據,如圖表/圖表/數據透視表等等/格式等等。所以你需要考慮到這一點以及... –

回答

4

如果您願意使用CSV格式(具有明顯的侷限性),你可以使用Python的內置CSV library

這裏是一個簡短的讀者例如:

>>> import csv 
>>> with open('eggs.csv', 'rb') as csvfile: 
...  spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|') 
...  for row in spamreader: 
...   print ', '.join(row) 
Spam, Spam, Spam, Spam, Spam, Baked Beans 
Spam, Lovely Spam, Wonderful Spam 

作家例如:

import csv 
with open('eggs.csv', 'a') as csvfile: 
    spamwriter = csv.writer(csvfile, delimiter=',', 
          quotechar='|', quoting=csv.QUOTE_MINIMAL) 
    spamwriter.writerow(['Spam'] * 5 + ['Baked Beans']) 
    spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam']) 

記住與CSV,你只能修改電子表格數據,沒有花哨的圖形或任何東西。

+0

這很好,但它會覆蓋現有的行。此外,一切都寫入1個單元格 – user1681664

+0

@ user1681664我編輯了示例代碼以符合條件。另外:如果您正在查看電子表格,請將分隔符設置爲','。 – mitchfish36

+0

這就是爲什麼你是男人 – user1681664