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

歡迎訪問 生活随笔!

生活随笔

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

python

Python如何导入自己编写的py文件

發布時間:2025/3/13 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python如何导入自己编写的py文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一. 想要實現的效果

  • 新建文件夾將自編模塊集中管理

  • 可在其它py文件內import 自編模塊,像import第三方庫一樣

  • 二. 實現的方法

    步驟1:將編號的模塊 *.py放入文件夾,在我計算機中是:F:\OneDrive\PythonPrj\_myFunction

    步驟2:新建用戶/系統環境變量。

    變量名:PYTHONPATH

    變量值:文件夾路徑

    然后就可以實現想要的效果了,以下三種import方式均可。

    這樣做的原理是,Python解釋器會去以下三個位置找import的模塊:

  • 當前文件所在目錄
  • 環境變量PYTHONPATH指定的目錄
  • Python 默認的安裝目錄
  • Python中sys.path變量記錄了解釋器可Import模塊的位置,如下圖所示:

    所以,可通過操作sys.path變量告訴解釋器去哪里找模塊,代碼如下:

    sys.path是個列表,這里用append將一個路徑加到了列表中,然后此路徑下的模塊a就能成功導入了。這種方法多寫了兩行代碼,不方便,所以只適合臨時用一下。

    三. 進階用法

    如果自編的模塊多了,或者想給自編模塊加上說明文檔的話,還是希望將每個自編模塊單獨存放在一個文件夾,以便于管理維護。像這樣:

    然后在文件夾(如myPackage1)內存放自編模塊。

    這時想導入模塊就要按照以下寫法:

    這是一級子文件夾的寫法,更多級文件夾可以一直點(.)下去。當然,一般也就會用到一級子文件夾,二級幾乎都不會使用。

    四. 使用_init_.py控制導入某文件夾時執行的操作

    上述的導入方式一次只能導入一個文件夾里的一個模塊,如果想控制一次導入文件夾中的所有模塊,而不用一個個用點號去點,我們需要用到_init_.py文件

    此文件需要與模塊在同一目錄中,如下圖所示,Python中將擁有_init_.py文件的文件夾稱為包

    每次import myPackage1時,_init.py會自動執行一次,所以也稱為包初始化文件。利用這個特性,我們可以在此文件中寫一些代碼,用來控制導入文件夾myPackage1時的行為。像這樣寫這個初始化文件:

    import sys # 將__init__.py文件所在目錄加入Python搜索目錄中,否則會提示找不到myModule1 sys.path.append(__file__[:-12])import myModule1

    然后,在其它py文件中導入myPackage1,因為_init_.py文件自動執行,myModule1文件會自動被導入。驗證一下:

    當然,即使在包初始化文件里寫了import 某模塊,還是可以用 import myPackage1.myModule 這樣的方式來導入。包初始化文件不會對原本的導入方式有任何影響。

    另一種寫法,可以一次導入包中某模塊中定義的函數和屬性,像這樣寫_init_.py文件:

    import sys # 將__init__.py文件所在目錄加入Python搜索目錄中,否則會提示找不到myModule1 sys.path.append(__file__[:-12])from myModule1 import *

    然后,在其它py文件導入時這么寫:

    可見,可以直接使用myModule1中的定義的函數了。

    總結一下,導入模塊的寫法與_init_.py的寫法需要保持一致,即要么都import 包名,要么都from 包名 import *,這樣才可達到想要的效果。

    我對Python理解還不夠深入,僅將摸索出來的一些規律分享出來,希望有所幫助。如有錯漏,歡迎評論指出。

    總結

    以上是生活随笔為你收集整理的Python如何导入自己编写的py文件的全部內容,希望文章能夠幫你解決所遇到的問題。

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