iT邦幫忙

0

python 路徑問題

  • 分享至 

  • xImage

您好:
目前參考
https://www.runoob.com/python3/python3-inputoutput.html

其中寫道

f = open("/tmp/foo.txt", "w")

f.write( "Python 是一个非常好的语言。\n是的,的确非常好!!\n" )

# 关闭打开的文件
f.close()

但卻出現 No such file or directory: '/tmp/foo.txt'
除非我用

f = open("./tmp/foo.txt", "w")

目前架構:
開發根目錄
a.py (內包含以上語法)
tmp (資料夾)

請問:
1.若該資料夾不存在,他不會自動建立?
2.該如何用路徑?

f = open("./tmp/foo.txt", "w")
f = open("/tmp/foo.txt", "w")

以上目前應該都是一樣,從根目錄算起,為何 /tmp 無法用 ,但 ./tmp 這段可用

謝謝!

codenewww iT邦新手 5 級 ‧ 2022-06-19 22:09:23 檢舉
1.不會
2.你可以去檔案總管複製路徑,再把\改成/
froce iT邦大師 1 級 ‧ 2022-06-19 22:15:36 檢舉
/tmp/foo.txt 是unix的路徑表示法。
/ 是unix path 的系統跟目錄。
簡單一點說是windows的 c:
noway iT邦研究生 1 級 ‧ 2022-06-20 22:00:10 檢舉
謝謝您
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

1
japhenchen
iT邦超人 1 級 ‧ 2022-06-20 11:38:29
最佳解答

強烈建議你用
os.path.join()

讓compiler組成適應各自系統的路徑是右斜左斜雙斜....

如 mypath = os.path.join(".","temp","123.txt")

這樣就保證你的程式在任何地方都能正常執行,而不是windows一種寫法,linux一種寫法,macOS又另一種寫法,雖然說會這樣跨OS的機會,除非是一個專業的side projector 才會幹的事...

0
小魚
iT邦大師 1 級 ‧ 2022-06-19 22:37:43

那個範例應該是用linux(unix)系統的,
如果你是用Windows系統要稍微改一下,
兩種系統的路徑不大一樣.

我要發表回答

立即登入回答