簡體   English   中英

如何在特定路徑創建文件?

[英]How do I create a file at a specific path?

在 python 中,我正在創建一個文件:

f = open("test.py", "a")

文件在哪里創建? 如何在特定路徑上創建文件?

f = open("C:\Test.py", "a")

返回錯誤。

文件路徑"c:\\Test\\blah"將包含“\\ T”的制表符。 你需要使用:

"C:\\Test"

要么

r"C:\Test"

我建議使用os模塊以避免跨平台的麻煩。 windows,linux,mac

如果目錄不存在,則會返回異常。

import os

filepath = os.path.join('c:/your/full/path', 'filename')
if not os.path.exists('c:/your/full/path'):
    os.makedirs('c:/your/full/path')
f = open(filepath, "a")

如果這是系統或其他東西的功能,您可以通過添加try / except進行錯誤控制來改進它。

文件在哪里創建?

在應用程序的當前工作目錄中。 您可以使用os.getcwd來檢查它,並使用os.chdir來更改它。

由於缺少權限,根目錄中的打開文件可能會失敗。

關閉文件后(有或沒有寫入)將創建它。 使用os.path.join()創建路徑,例如

filepath = os.path.join("c:\\","test.py")

無論python解釋器的根目錄何處啟動,都會創建該文件。

例如,你在/home/user/program啟動python,然后文件“test.py”將位於/home/user/program/test.py

f = open(“test.py”,“a”)將在運行python文件的任何目錄中創建。

我不確定其他錯誤...我不在Windows中工作。

最好的做法是使用'/'和所謂的'原始字符串'來定義Python中的文件路徑。

path = r"C:/Test.py"

但是,正常程序可能沒有在C:驅動器根目錄中寫入的權限。 您可能需要允許您的程序這樣做,或者選擇更合理的東西,因為您可能不需要這樣做。

使用操作系統模塊

filename = "random.txt"

x = os.path.join("path", "filename")

with open(x, "w") as file:
    file.write("Your Text")
    file.close

暫無
暫無

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

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