導航:首頁 > 編程語言 > python重新載入模塊

python重新載入模塊

發布時間:2022-10-03 05:51:27

python怎麼載入自己定義的模塊

一般來說,我們會將自己寫的python模塊與python自帶的模塊分開存放以達到便於維護的目的。
Python 運行環境在查找庫文件時是對 sys.path 列表進行遍歷,如果我們想在運行環境中注冊新的類庫,主要有以下三種方法:
在sys.path列表中添加新的路徑。
設置PYTHONPATH環境變數。
將庫文件復制到sys.path列表中的目錄里(如site-packages目錄)。
其實,最簡單的辦法是用 .pth 文件來實現。Python 在遍歷已知的庫文件目錄過程中,如果見到一個 .pth 文件,就會將文件中所記錄的路徑加入到 sys.path 設置中,這樣 .pth 文件說指明的庫也就可以被 Python 運行環境找到。
操作:
在Python/Lib/site-package目錄下創建一個MyMole.pth文件,其中內容為自定義的模塊所在的路徑。
Config代碼
C:\Project
C:\Project 這樣Project目錄下的python文件就可以被找到了。

Ⅱ python 怎麼安裝新的模塊

先在命令行里打一下pip,確認下這個模塊安裝了沒有。
如果沒有則,
首先安裝easy_install
下載地址:https://pypi.python.org/pypi/ez_setup
解壓,安裝.

pythonez_setup.py



安裝好easy_install 之後 再安裝pip
下載地址:https://pypi.python.org/pypi/pip
解壓,安裝.

pythonsetup.pyinstall



之後要安裝的包就直接

pipinstallxxx

Ⅲ python中怎麼import自己寫的模塊

只需要在文件中import與你寫的文件的文件名一致的模塊名即可,這時Python會為你創建一個pyc文件的。
即,如果你已經寫了一個名為ssss.py的文件,而現在你需要在名為aaaa.py的文件中使用ssss.py中定義的方法,那麼你只需要在aaaa.py中加入import ssss,然後你就可以在aaaa.py中使用ssss.py中的方法(當然方法前需要加模塊名來引用)。你還可以在aaaa.py中如下寫
from ssss import ....
....可替換為ssss.py中定義的方法的名稱

from ssss import *
導入ssss.py中的所用定義,使用以上這兩種方法導入ssss.py中的定義,你在aaaa.py中可不用使用模塊名來引用。

Ⅳ 如何導入python中的模塊

定義模塊,只要使用文本編輯器,把一些python代碼輸入到文本中,然後以.py為後綴名進行保存,任何此類文件都會被認為是python模塊。
比如說,下面的代碼輸入到一個文件中,就可以看作是一個模塊:
def printme(var): print varif __name__ == '__main__': printme(1)

假設說輸入到a.py中,那麼import a就可以把這個模塊導入。
然後可執行a.printme(3),屏幕即可列印出3:
>>> a.printme(3)3>>>

一個模塊頂層定義的變數,會自動變成模塊的屬性。例如:
data=[1,2,3]def printme(var): print varif __name__ == '__main__': printme(1)

data變數就是模塊的一個屬性。其實printme也是一個屬性,只不過是一個函數罷了。
引入模塊示例如下:(假定此時data=[1,2,3]未定義)

>>> import a>>> a.data Traceback (most recent call last): File "<pyshell#1>", line 1, in <mole> a.dataAttributeError: 'mole' object has no attribute 'data'>>> reload(a)<mole 'a' from 'C:/py\a.pyc'>>>> a.data Traceback (most recent call last): File "<pyshell#3>", line 1, in <mole> a.dataAttributeError: 'mole' object has no attribute 'data'>>>

從上述提示可以看出data屬性未定義,此時再在a.py文件中定義data=[1,2,3],重新載入a模塊,並輸出data屬性:
>>> reload(a)<mole 'a' from 'C:/py\a.py'>>>> a.data[1, 2, 3]>>>

這里的reload函數可以重新載入一個模塊。如果在模塊代碼中更改了,那麼需要重新載入。
上面a.data,就是訪問模塊中的屬性。
上面的例子是導入一個文件作為一個模塊。
其實python的模塊導入還有更豐富的內容。
除了模塊名之外,python也可以導入指定目錄路徑。python代碼的目錄就稱為包。因此,這類導入就稱為包導入。事實上,包導入是把計算機上的目錄變成python的一個命名空間。而屬性就是目錄中包含的子目錄或者是模塊文件。
看下面例子:
在我的桌面上有一個aa文件夾,裡面有bb文件夾,bb裡面有a.py這個文件。
那麼在aa和bb文件夾中分別放置一個__init__.py,之後,在命令行中import aa.bb.a,就可以導入模塊a了。

Ⅳ python怎麼導自定義模塊

python中導入自定義模塊的方法:

1、py執行文件和模塊同屬於同個目錄(父級目錄)
直接使用import <模塊名>命令導入模塊,然後使用模塊.變數|函數語句即可使用模塊中的函數。
2、先使用sys模塊導入自定義模塊的路徑,然後使用import導入模塊
導入步驟:

1、使用import sys導入sys模塊
2、使用sys.path.append(path)函數導入自定義模塊所在目錄
3、然後使用import <模塊名>命令導入模塊
更多Python知識請關注Python自學網。

Ⅵ python如何導入自定義模塊

1、相同目錄下,若在程序test1.py中導入模塊mod1,
則直接使用import
mod1或from
mod1
import
*;
2、主程序所在目錄是模塊所在目錄的父(或祖輩)目錄則要建立空文件__init__.py文件然後使用
from
mod2.mod2
import
*

Ⅶ python 類和繼承,包及模塊導入 求解答

一 .mole

通常模塊為一個文件,直接使用import來導入就好了。可以作為mole的文件類型有".py"、".pyo"、".pyc"、".pyd"、".so"、".dll"。

二. package

通常包總是一個目錄,可以使用import導入包,或者from + import來導入包中的部分模塊。包目錄下為首的一個文件便是 __init__.py。然後是一些模塊文件和子目錄,假如子目錄中也有 __init__.py 那麼它就是這個包的子包了。

一.模塊你可以使用import語句將一個源代碼文件作為模塊導入.例如:

[python]view plain

Ⅷ python怎麼導入同一包的模塊

一、何為模塊

1.一個模塊就是一個包含了python定義和聲明的文件,文件名就是模塊名字加上.py的後綴。

2.模塊目的和函數,對象等一樣,是為了代碼的復用性而存在的。即一個py程序寫了很多功能,也可以被其他py程序調用。被調用後被作為模塊,此時會產生一個pyc的文件即為這個模塊的緩存文件,相當於編譯了模塊文件使該py模塊被調用的速度變快。一個大的項目一個人肯定是不行的,所以模塊也為程序員相互間的合作提供了便利。

二、模塊妙用

1.import

只需要在py程序開頭加上import 文件名(不能有.py後綴)。例如,模塊的文件名是span.py,那麼只需在自己的py程序加import span。

2. import可以在程序的任意位置調用,但一次調用後會駐留內存,下次再調用會直接調用內存中的模塊(python的優化)。

3.個模塊都是一個獨立的名稱空間,定義在這個模塊中的函數,把這個模塊的名稱空間當做全局名稱空間,這樣我們在編寫自己的模塊時,就不用擔心我們定義在自己模塊中全局變數會在被導入時,與使用者的全局變數沖突。

print('from the spam.py')

money=1000def read1(): print('spam->read1->money',1000)def read2(): print('spam->read2 calling read')
read1()def change(): global money
money=0

支持tab自動補全

Ⅸ Python中怎麼引入模塊

項目中想使用以前的代碼,或者什麼樣的需求致使你需要導入外部的包
如果是web 下,比如說django ,那麼你新建一個app,把你需要導入的說用東東,都寫到這個app中,然後在setting中的app也配上基本就ok了
如果是本地代碼,可以有幾種方式,
1、這種最簡單,也可能最不實用,將你的外部文件放到跟需要調用外部文件的文件同一個包下,同一目錄
folder
------toinvoke.py
------tobeinvoded.py
這樣在toinvoke.py 中引入
import toveinvoked 或 from tobeinvoked import *
即可
2、你的其他文件不是單個文件,或者不能如上所說放到同一目錄下,而是在不同目錄中,子目錄
folder
------tobeinvodedA.py
------tobeinvodedB.py
------tobeinvodedC.py
toinvoke.py
這種情況,現在folder 下新建一個__init__.py 的空文件,此時的folder不再是一個普通的文件夾,而是一個包 package,現在像這樣
folder #文件夾 現在的性質為一個python包package
------__init__.py
------tobeinvoded.py
------tobeinvodedA.py
------tobeinvodedB.py
------tobeinvodedC.py
toinvoke.py
這樣在toinvoke.py 中引入
import folder.toveinvoked 或 from folder.tobeinvoked import *
即可
3、同理,如果是如下的情況,folderB中的模塊要調用folderA中的模塊,方法同上,有什麼改變,你已經知道了

folderA
------tobeinvoded.py
------tobeinvodedA.py
------tobeinvodedB.py
------tobeinvodedC.py

folderB
--------toinvoke.py

這樣在toinvoke.py 中引入

import folder.toveinvoked 或 from folder.tobeinvoked import *
即可
4、將要被調用的代碼拷貝到$PYTHONHOME$\Lib\site-packages 下面,這個就跟Eclipse插件安裝差不多

5、在$PYTHONHOME$\Lib\site-packages 下面新建一個.pth文件,比如說是MyPackage.pth,裡面的內容是你的包的絕對路徑比如:E:/PythonPrj
那麼,在E:/PythonPrj下的所有包都可以按照包所在的相對路徑引入,這個跟Eclipse插件安裝的link 方式差不多
6、跟上面的差不多,也可以加個環境變數,這個就不多說了

總結、看看Python的包搜索路徑
Python會在以下路徑中搜索它想要尋找的模塊:
1. 程序所在的文件夾
2. 標准庫的安裝路徑
3. 操作系統環境變數PYTHONPATH所包含的路徑

將自定義庫的路徑添加到Python的庫路徑中去,有如下兩種方法:
1. 動態的添加庫路徑。在程序運行過程中修改sys.path的值,添加自己的庫路徑
import sys
sys.path.append(r'your_path')
2. 在Python安裝目錄下的\Lib\site-packages文件夾中建立一個.pth文件,內容為自己寫的庫路徑。示例如下
E:\\work\\Python\\http
E:\\work\\Python\\logging

Ⅹ Python調用自定義模塊方法有什麼

import語句

自定義模塊可以採用import語句來進行引入,其操作步驟是先導入模塊,再調用模塊中包含的函數,可將自定義模塊放入當前目錄,便於解釋器路徑搜索,以下是導入自定義hello.py模塊,並調用World函數的實例:

#!/usr/bin/python

#-*- coding: UTF-8 -*-

#導入模塊

import hello

#現在可以調用模塊里包含的函數了

support.print_func("World")

輸出結果為:

Hello World!

以上實例也可以採用from…import的方法進行實現,是指從一個模塊中導入指定的部分到當前命名空間中,以上功能可寫成:

#!/usr/bin/python

#-*- coding: UTF-8 -*-

from hello import World

如果要將模塊中的所有內容全部導入當前命名空間,可採用from…import*的方法,具體實例如下:

#!/usr/bin/python

#-*- coding: UTF-8 -*-

from hello import *

還需注意,當要導入一個模塊時,Python解釋器會對模塊的位置進行搜索,具體搜索順序規律如下:

1.當前目錄;

2.如果不在當前目錄,Python則搜索在shell變數PYTHONPATH下的每個目錄;

3.如果都找不到,Python會察看默認路徑。

閱讀全文

與python重新載入模塊相關的資料

熱點內容
程序員用得到數字區嗎 瀏覽:174
python求商 瀏覽:477
ipad能用c語言編譯器嗎 瀏覽:561
軟泥解壓球最新版 瀏覽:998
4萬程序員辭職創業 瀏覽:759
thinkingphp 瀏覽:597
安卓相冊移動文件夾 瀏覽:6
耳朵清潔解壓聲控99的人都睡得著 瀏覽:205
叉車出租網站源碼 瀏覽:874
共享單車的app是什麼 瀏覽:408
不帶gui的伺服器什麼意思 瀏覽:373
金剛經及PDF 瀏覽:102
php中冒號 瀏覽:358
php5432 瀏覽:352
命令在哪使用 瀏覽:172
php獲取網頁元素 瀏覽:708
為什麼需要硬體驅動編譯 瀏覽:885
pm編程怎樣看導柱孔對不對稱 瀏覽:138
農業大學選課找不到伺服器怎麼辦 瀏覽:660
路由配置網關命令 瀏覽:935