日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python对应的岗位_隐式相对导入如何在Python中工作?

發布時間:2025/3/15 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python对应的岗位_隐式相对导入如何在Python中工作? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

包是具有__init__.py文件的目錄,是,并且在模塊搜索路徑上找到時作為模塊加載.因此,如果父目錄位于模塊搜索路徑上,則pkg只是一個可以導入并視為包的包.

但是通過將pkg / core / main.py文件作為腳本運行,Python將pkg / core目錄添加到模塊搜索路徑,而不是pkg的父目錄.您現在在模塊搜索路徑上有一個__init__.py文件,但這不是定義包的內容.您只有一個__main__模塊,與其他任何東西都沒有包關系,您不能依賴隱式相對導入.

你有三個選擇:

>不要將包內的文件作為腳本運行.將一個腳本文件放在包外面,然后根據需要導入包.您可以將它放在pkg目錄旁邊,或者確保首先將pkg目錄安裝到模塊搜索路徑上已有的目錄中,或者讓腳本計算添加到sys.path的正確路徑.

>使用-m command line switch運行模塊,就像它是一個腳本一樣.如果使用python -m pkg.core,Python將查找__main__.py文件并將其作為腳本運行. -m開關將當前工作目錄添加到模塊搜索路徑中,因此當您在正確的工作目錄中時,可以使用該命令,一切都可以正常工作.或者將您的軟件包安裝在模塊搜索路徑上已有的目錄中.

>讓您的腳本將正確的目錄添加到模塊搜索路徑(基于os.path.absolute(__ file__)以獲取當前文件的路徑).考慮到您的腳本始終命名為__main__,導入pkg.core.main將添加第二個獨立的模塊對象;你有兩個獨立的命名空間.

我也強烈反對使用隱式相對導入.您可以通過添加具有相同名稱的嵌套包或模塊輕松地屏蔽頂級模塊和包.如果您嘗試在pkg包中使用導入時間,則會在標準庫時間模塊之前找到pkg / time.py.相反,使用顯式相對模塊引用的Python 3模型;從__future__ import absolute_import添加到您的所有文件,然后使用from. import< name>明確指出從哪里導入模塊.

總結

以上是生活随笔為你收集整理的python对应的岗位_隐式相对导入如何在Python中工作?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。