簡體   English   中英

如何在Python中獲取項目的當前路徑?

[英]How do I get the current path of a project in Python?

有沒有辦法找到子文件夾中當前項目的路徑?

例如,如果我有類似的東西:

/
    main.py
    /utils
        utilities.py
    /foo
        foo.py
        /foo/bar
           bar.py

/foo/foo.py/foo/bar/bar.py編碼時,我想包括位於/utils/utilities.py的“實用程序”模塊, /utils/utilities.py如何通過調用某種相對路徑來實現這一點。項目,然后僅導入此幫助程序模塊?

我能夠檢索正在執行的文件的路徑:

os.path.realpath(os.path.abspath(os.path.split(inspect.getfile( inspect.currentframe() ))[0]))

但是我需要的是當前項目的相對路徑或絕對路徑。

提前致謝。

如果將項目設置為包,則無需擔心路徑,在這種情況下,這就像將空的__init__.py放入每個文件夾一樣簡單:

/src
    __init__.py
    main.py
    foo/
        __init__.py
        foo.py
        /bar
        __init__.py
        bar.py
    util/
        __init__.py
        utilities.py

現在, main.pyfoo.pybar.py可以通過簡單的方式導入utilities模塊:

from util import utilities

我通過以下示例提供了此功能:

cmd_subfolder = os.path.realpath(os.path.abspath(os.path.join(os.path.split(inspect.getfile( inspect.currentframe() ))[0],"../../utils/")))

暫無
暫無

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

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