[英]read files from directory that has running script rather than calling directory location from where the script was called, python
假設我有以下
test/
Main.py
test/one/
One.py
test1.txt
test/two/
Two.py
test2.txt
我想做的是,運行Main.py並分別調用One.py和Two.py並想要讀取文件。 由於包含One.py的目錄只有一個文件test1.txt,我想讀取該文件,而包含Two.py的目錄只有一個文件test2.txt。
這可以簡單地通過
open("one/test1.txt", "r")
並在兩個文件中打開(“ two / test2.txt”,“ r”)
還有其他讀取文件的方法。 這是我采取的簡單情況。
我正面臨這個問題。 為此,我創建了設置對象,並手動向該目錄提供了所需的位置,並將此設置對象傳遞給需要位置以讀取文件的所有類。
有不同的方法嗎?
如果我正確理解了您的問題,是否想知道正在運行的python文件的目錄?
您可以在Python程序中訪問特殊變量__file__
。 它返回python文件的路徑。
要在運行腳本的目錄中打開一個命名文件,請使用:
import os
f = open(os.path.join(os.path.dirname(__file__), "filename.txt"))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.