電子技術論壇_中國專業的電子工程師學習交流社區-中電網技術論壇's Archiver

look_w 發表于 2019-5-18 10:23

python模塊(4)

python導入自定義模塊方法
方法一:將兩個文件放在同一級別的目錄下(不推薦)

假如,有一個自定義模塊helloworld.py,它提供的show()函數僅僅是打印一行Hello World!信息:

#helloworld.py
def show():
    print(“Hello World!”)



然后有一個文件test.py。現在把他們放在同一個目錄下,這樣,在test.py中,就可以直接導入這個模塊:

#test.py
import helloworld.py
helloworld.show()



為了測試我把它們都放在同一個目錄里,運行test.py,成功運行。
方法二:將自定義模塊打包

將一攬子的模塊(.py文件)放在一個文件夾里面,再添加一個init.py,這樣這個文件夾就成為了一個包。可以將這個包放入python安裝目錄的../Lib/site-packages/中,這樣就可以導入這個包中的模塊使用了

例如,創建一個名為pck的文件夾,然后將helloworld.py文件放入,再放一個空的init.py文件,這個pck就成為了一個包。將包放入上面所說的路徑中。如我的路徑是:C:\Program Files (x86)\Python35-32\Lib\site-packages。

然后,test.py放在非site-packages路徑里(為了和處于site-packages/pck下的模塊區別路徑),test.py內容如下

#test.py
import pck.helloworld
pck.helloworld.show()



輸出結果與方法一相同。

注意!上面的show方法,因為我是直接導入模塊,所以“包名+模塊名”的前綴要寫完整,否則可能找不到show函數
方法三:自定義模塊打包,放在test.py同一個目錄下

方法三和方法二差不多,只不過方法三中,打的包pck不放在site-packages下,而是放在和test.py同一目錄下,引用方法相同。
方法四:在test.py中設置模塊搜索路徑

現在,我將包pck放在C盤下:C:/pck,那么我可以在test.py中寫如下代碼:

#test.py
import sys
sys.path.append(“C:/“)  //設置自定義包的搜索路徑
import pck.helloworld
pck.helloworld.show()



甚至,可以不用包,我直接將helloworld.py文件放在C盤下,然后在test.py中寫

#test.py
import sys
sys.path.append(“C:/“)  //設置自定義包的搜索路徑
import helloworld
helloworld.show()



方法五:使用.pth文件

首先,任意腳步中用如下代碼來獲取可放置.pth文件的路徑

import site
site.getsitepackages()



會顯示放置.pth的搜索路徑如下:
C:\Program Files (x86)\Python35-32\lib\site-packages

創建一個測試包joepck(這個包名是隨便起的),放置在任意路徑下(為了測試用),我們這里放在C:\Joe

然后建立一個.pth文件
PckPath.pth
內容就是我們放置包的路徑如下:

C:\Joe



然后把PckPath.pth文件放在C:\Program Files (x86)\Python35-32\Lib\site-packages路徑下

在任意py腳本中使用from import語句來使用模塊

from joepck import helloworld
helloworld.show()

頁: [1]

Powered by eccn 7.0.0  © 2001-2009 Eccn Inc.

成茄子视频人app污下载-茄子视频ios下载安装-茄子视频懂你更多qz8app懂你更多