當前位置:首頁 » 編程語言 » python引入模塊

python引入模塊

發布時間: 2022-08-23 21:00:59

⑴ 如何導入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怎麼導入gm.api模塊

1.將依賴包目錄放置到*:\Python*\Lib\site-packages\中,即python的安裝目錄中。 首先確定API目錄下是否有__init__.py文件,如果沒有,請新建一個。
2.打開API主運行文件,查看裡面的類名稱。此處為main.py文件,類為class dcVerCode。
3.此處以導入main中的類dcVerCode為例。 打開__init__.py,輸入: from main import dcVerCode 這樣就完成了依賴包的指定。
4. 運行環境:Python 2.6 - 2.7 依賴:無任何依賴。安裝:pip install sinaweibopy

⑶ 如何導入文件模塊 python

python是由一系列的模塊組成的,每個模塊就是一個py為後綴的文件,同時模塊也是一個命名空間,從而避免了變數名稱沖突的問題。模塊我們就可以理解為lib庫,如果需要使用某個模塊中的函數或對象,則要導入這個模塊才可以使用,除了系統默認的模塊(內置函數)不需要導入外。

2
在python中常用import或者from...import來導入相應的模塊。模塊一些函數和類的集合文件,並實現一定的功能,當我們需要使用這些功能的時候,可以直接把相應的模塊導入到我們的程序中,類似C語言中的include頭文件。輸入模塊的方法如下所示:

3
import:
import mode #導入mode模塊
print('=======Python import mode===============');
print ('The command line arguments are:')
for i in mode.argv:
print (i)
print ('\n The python path',mode.path)

即導入mode模塊後,使用mode.***即可使用mode模塊中的***方法,函數等。

4
from...import...:
from mode import argv,path #從mode中導入特定的成員
print('========python from import============')
print('path:',path)

即使用from mode import argv即可直接調用mode模塊中argv函數,方法等

5
簡單的說,使用第二種方法導入模塊,那麼調用模塊中的函數的時候就不需要輸入模塊名稱即可直接調用了。
具體的實例可以參見如下兩種情況:

6
另外,還有一種'from...import...as...'的導入方法。這樣調用模塊中的函數的時候,可以用自己想要的名字來替代該函數名了,如下圖中,即用'haha'來替代了'urlopen'這個函數:

7
總結:
導入mode模塊,import與from…import的不同之處在於:
如果你想要直接輸入argv變數到你的程序中而避免每次調用都輸入mode,
則可使用:from mode import arg
一般說來,應該避免使用from..import而使用import來增加程序的可讀性,也可以避免名稱的沖突。

⑷ 詳解Python中import方法引入模塊

在python用import或者from...import或者from...import...as...來導入相應的模塊,作用和使用方法與C語言的include頭文件類似。其實就是引入某些成熟的函數庫和成熟的方法,避免重復造輪子,提高開發速度。
python的import方法可以引入系統的模塊,也可以引入我們自己寫好的共用模塊,這點和php非常相似,但是它們的具體細節還不是很一樣。因為php是在引入的時候指明引入文件的具體路徑,而python中不能夠寫文件路徑進行引入。
下面總結一下import的幾種情況:
python包含子目錄中的模塊方法比較簡單,關鍵是能夠在sys.path裡面找到通向模塊文件的路徑。
下面將具體介紹幾種常用情況:
(1)主程序與模塊程序在同一目錄下:
如下面程序結構:
`-- src
|-- mod1.py
`-- test1.py
若在程序test1.py中導入模塊mod1, 則直接使用import mod1或from mod1 import *;
(2)主程序所在目錄是模塊所在目錄的父(或祖輩)目錄
如下面程序結構:
`-- src
|-- mod1.py
|-- mod2
| `-- mod2.py
`-- test1.py
若在程序test1.py中導入模塊mod2, 需要在mod2文件夾中建立空文件__init__.py文件(也可以在該文件中自定義輸出模塊介面); 然後使用 from mod2.mod2 import * 或import mod2.mod2.
(3)主程序導入上層目錄中模塊或其他目錄(平級)下的模塊
如下面程序結構:
`-- src
|-- mod1.py
|-- mod2
| `-- mod2.py
|-- sub
| `-- test2.py
`-- test1.py
若在程序test2.py中導入模塊mod1和mod2。首先需要在mod2下建立__init__.py文件(同(2)),src下不必建立該文件。然後調用方式如下:
下面程序執行方式均在程序文件所在目錄下執行,如test2.py是在cd sub;之後執行python test2.py
而test1.py是在cd src;之後執行python test1.py; 不保證在src目錄下執行python sub/test2.py成功。
import sys
sys.path.append("..")
import mod1
import mod2.mod2

⑸ python導入模塊的方法有哪些

方法一
import modname
模塊是指一個可以交互使用,或者從另一Python 程序訪問的代碼段。只要導入了一個模塊,就可以引用它的任何公共的函數、類或屬性。模塊可以通過這種方法來使用其它模塊的功能。
用import語句導入模塊,就在當前的名稱空間(namespace)建立了一個到該模塊的引用.這種引用必須使用全稱,也就是說,當使用在被導入模塊中定義的函數時,必須包含模塊的名字。所以不能只使用 funcname,而應該使用 modname.funcname

方法二
from modname import funcname
from modname import fa, fb, fc
或者
from modname import *
與第1種方法的區別:funcname 被直接導入到本地名字空間去了,所以它可以直接使用,而不需要加上模塊名的限定* 表示,該模塊的所有公共對象(public objects)都被導入到 當前的名稱空間,也就是任何只要不是以」_」開始的東西都會被導入。
modname沒有被定義,所以modname.funcname這種方式不起作用。並且,如果funcname如果已經被定義,它會被新版本(該導入模塊中的版本)所替代。如果funcname被改成指向其他對象,modname不能不會覺察到。
建議:
1)如果你要經常訪問模塊的屬性和方法,且不想一遍又一遍地敲入模塊名,使用 from mole import
2)如果你想要有選擇地導入某些屬性和方法,而不想要其它的,使用 from mole import
3)如果模塊包含的屬性和方法與你的某個模塊同名,你必須使用import mole來避免名字沖突
4)盡量少用 from mole import * ,因為判定一個特殊的函數或屬性是從哪來的有些困難,並且會造成調試和重構都更困難。

方法三
內建函數__import__()
除了前面兩種使用import關鍵字的方法以外,我們還可以使用內建函數 __import__() 來導入 mole。兩者的區別是,import 後面跟的必須是一個類型(type),而__import__() 的參數是一個字元串,這個字元串可能來自配置文件,也可能是某個表達式計算結果。例如:
mymole = __import__ (』mole_name』)
附註:
1)模塊的內容都放在一個模塊文件中,如 mymole 的內容應該放在PYTHONPATH 目錄下的一個mymole.py中,C實現的除外
2)包可以將幾個模塊名稱空間組織起來, 如A.b 就表示在包A中的一個子模塊b
可以單獨導入某一個子模塊,如Python文檔中給出的例子
import sound.effects.echo
這樣必須使用全稱對裡面的對象進行引用,如
sound.effects.echo.echofilter(input, output, delay=0.7, atten=4)
還可以使用下面的語句來載入echo子模塊
from Sound.Effects import echo
它在沒有包前綴的情況下也可以使用, 所以它可以如下方式調用:
echo.echofilter(input, output, delay=0.7, atten=4)
不主張從一個包或模塊中用import * 導入所有模塊,因為這樣的通常會導致可讀性很差。
from Package import specific_submole的用法並沒有錯,實際上這還是推薦的用法,除非導入的模塊需要使用其它包中的同名子模塊(the importing mole needs to use submoles with the same name from different packages).
綜上所述,一般情況應該使用import , 但有幾個例外
1)mole文檔告訴你要用from-import的
2)導入一個包組件。需要一個包裡面的某個子模塊,一般用from A.b import c比import A.b.c 更方便 且不會冒混淆的危險.

⑹ 在python中,哪個關鍵字可以導入模塊

有兩種:
①import +模塊名
②from +模塊名 import +模塊下的方法/類/值名
①示例:import math
之後可以使用math.log(40)等函數了,它會返回3.6888794541139363。
還有一種類似於import math as m,它就是表示你只要輸入m就代表math了,可以方便寫。這樣的話就寫m.log(40)
②示例:from math import log
之後可以直接使用log(40),但是不能使用math.(因為被跳過了),結果同上。
還有一種,就是類似於from math import *
這樣之後,你就會把所有的math里的直接的方法/類/值調用出來,直接使用。

⑺ 怎麼從python引入自己的模塊

1.如果導入的模塊和主程序在同個目錄下,直接import就行了
2.如果導入的模塊是在主程序所在目錄的子目錄下,可以在子目錄中增加一個空白的__init__.py文件,該文件使得python解釋器將子目錄整個也當成一個模塊,然後直接通過「import 子目錄.模塊」導入即可。
3.如果導入的模塊是在主程序所在目錄的父目錄下,則要通過修改path來解決,有兩種方法:
(1)通過」import sys,sys.path.append('父目錄的路徑')「來改變,這種方法屬於一次性的,只對當前的python解釋器進程有效,關掉python重啟後就失效了。
(2)直接修改環境變數:在windows中是 「 set 變數=『路徑』 」 例如:set PYTHONPATH=『C:\test\...』 查看是否設置成功用echo %PYTHONPATH%,而且進到python解釋器中查看sys.path,會發現已經有了新增加的路徑了。這種方式是永久的,一次設置以後一直都有效。在linux中是 "export 變數=『路徑』 「,查看是" echo $變數 "
通過修改path是通用的方法,因為python解釋器就是通過sys.path去一個地方一個地方的尋找模塊的。

⑻ 在python中導入模塊中的對象有哪幾種方式

1、導入整個模塊:
一般格式為:
import
模塊1[模塊2[,...]]
模塊名就是程序文件的前綴,不含.py,可一次導入多個模塊,導入模塊後,調用模塊中的函數或類時,需要以模塊名為前綴,這樣代碼讀起來更容易理解.
例:
>>>import
math
>>>math.sin(0.5)
0.4794255
2、與form聯用導入整個模塊:
一般格式為:
form
模塊名
import*
這種方式導入模塊後,調用模塊中的函數或類,僅使用函數名或類名,代碼簡潔,但可讀性差,不容易理解
例:
>>>form
math
import*
>>>cos(0.5)
0.8775825
3、與form聯用導入一個或多個對象:
一般格式為:
form
模塊名
import
對象1[,對象2[,對象...]]
這種方式只導入模塊中的一個或多個對象,調用模塊中的對象時,僅使用對象名(#與方法二類似)
例:
>>>form
math
import
sin,cos,exp
>>>sin(0.5)
0.4794255
>>>cos(0.5)
0.8775825
>>>exp(1)
2.7182818
(8)python引入模塊擴展閱讀
Python中常用模塊
math:模塊定義了標準的數學方法,如sin、cos
random:模塊提供了各種方法來產生隨機數
datetime:模塊中有日期時間處理方法
time:模塊中有時間、時鍾、計時相關的方法
tkinter:模塊提供了圖形界面開發的方法
參考資料:python
-
import

⑼ 為何python要引入模塊的概念

Python 模塊(Mole),是一個 Python 文件,以 .py 結尾,包含了 Python 對象定義和Python語句。

模塊讓你能夠有邏輯地組織你的 Python 代碼段。

把相關的代碼分配到一個模塊里能讓你的代碼更好用,更易懂。

模塊能定義函數,類和變數,模塊里也能包含可執行的代碼。

模塊的引入

模塊定義好後,我們可以使用 import 語句來引入模塊

當解釋器遇到 import 語句,如果模塊在當前的搜索路徑就會被導入。

⑽ 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會察看默認路徑。

熱點內容
電影的文件夾都是 發布:2025-01-18 08:21:49 瀏覽:834
post提交php 發布:2025-01-18 08:21:42 瀏覽:459
如何禁止寫入文件夾 發布:2025-01-18 08:21:04 瀏覽:362
360雲盤等待上傳 發布:2025-01-18 08:21:03 瀏覽:795
安卓手機怎麼設置壁紙 發布:2025-01-18 08:20:23 瀏覽:318
如何關閉密碼鎖 發布:2025-01-18 08:18:51 瀏覽:858
我的電腦ftp打不開 發布:2025-01-18 08:18:05 瀏覽:512
手機如何與伺服器端連接的 發布:2025-01-18 08:16:49 瀏覽:45
為什麼安卓手機玩游戲沒有聲音 發布:2025-01-18 08:11:56 瀏覽:420
androidtextview字體 發布:2025-01-18 07:51:18 瀏覽:555