簡體   English   中英

如何將csv文件保存到特定路徑?

[英]How to save csv file into a specific path?

最近,我有一個項目是將一些數據另存為csv文件並將其保存在絕對路徑中。 這是我的代碼。

import csv
a=[1,2,3,4,5,6,7,8,9]
with open("C:/test.csv","w") as f:
    writer = csv.writer(f)
    writer.writerows(a)

但是它顯示了一些錯誤

Traceback (most recent call last):
  File "C:/Users/rickchen/Desktop/save1.py", line 3, in <module>
    with open("C:/test.csv","w") as f:
IOError: [Errno 13] Permission denied: 'C:/test.csv'

主人可以幫我嗎? 非常感謝^ _ ^

您可能沒有寫許可權以寫入C驅動器的根目錄。 您可以嘗試以下幾種方法:

  1. 以管理員權限運行Python。 顯然,這取決於您如何運行腳本。 例如,如果要啟動命令提示符並在其中運行腳本,請右鍵單擊它,然后選擇“以管理員身份運行”。

  2. 使用Windows為您的用戶帳戶授予對C:\\根文件夾的寫訪問權限。

  3. 可能要確保輸出文件尚未在另一個應用程序中打開。

  4. 理想情況下,您應該寫一個更合適的文件夾。 例如,將輸出直接寫入DesktopDocuments文件夾很簡單。

您的腳本可以更新如下:

import csv
import os

a = [1, 2, 3, 4, 5, 6, 7, 8, 9]

filename = os.path.join(os.environ["HOMEDRIVE"], os.environ["HOMEPATH"], "Desktop", "test.csv")

with open(filename, "wb") as f:
    writer = csv.writer(f)
    writer.writerow(a)  # Or use writer.writerows([row] for row in a) for one per line

os.environ["HOMEDRIVE"]os.environ["HOMEPATH"]將提供用戶的主文件夾,添加“ Desktop或“ Documents將為您提供合適的路徑。 os.path.join()用於安全地將各個位與合適的分隔符連接在一起,從而為您提供文件名,例如:

C:\Users\Fred\Desktop\test.csv

假設您使用的是Python 2.x


如果您使用的是Python 3.x,則只需修改打開文件以供CSV編寫器使用的方式:

with open(filename, "w", newline="") as f:

暫無
暫無

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

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