導航:首頁 > 編程語言 > python導入上級目錄模塊

python導入上級目錄模塊

發布時間:2022-05-11 14:55:00

『壹』 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 怎麼引入上上級目錄的文件

以前在遠標了解過用 os 模塊,上一級目錄是兩個點。
所以可以用這樣的方法,比如以下兩個用法:
import os
dirs = os.path.join( os.path.dirname(__file__),'../..') #上上級文件目錄名
os.sys.path.append(os.path.join( os.path.dirname(__file__), '../..')) #將上上級目錄載入到python的環境變數中。

『叄』 python 怎樣添加模塊載入路徑

這里主要介紹第二種方法:通過.ph文件進行設置,好處是可以將路徑設為永久路徑

在Python的安裝目錄下,找到Libsite-packages文件夾,在該文件夾下新建一個以.pth為後綴名的文件,編輯文件,內容為要添加的庫路徑。(我的文件名命名為setpath.pth)。添加路徑示例:文件內容寫入要引用的庫路徑

步驟1:建立文件,可以首先建立一個文本文檔,寫下路徑如D:\Python\mulib。我這里新建的文件路徑的文件夾命名為「mulib」

步驟3:將保存好的文件放在Python的site-packages文件夾中就完成了。

『肆』 python 怎麼引入上上級目錄的文件

python導入同級別模塊很方便:
import xxx
要導入下級目錄頁挺方便,需要在下級目錄中寫一個__init__.py文件
from dirname import xxx
要導入上級目錄,可以使用sys.path:
首先sys.path的作用是:當使用import語句導入模塊時,解釋器會搜索當前模塊所在目錄以及sys.path指定的路徑去找需要import的模塊
所以改變思路,直接把上級目錄加到sys.path里:sys.path.append('../')
from fatherdirname import xxx

『伍』 python為什麼不能導入當前目錄模塊

目錄?
加個__init__.py文件

『陸』 如何在python3中正確導入同一目錄下的模塊

因為要absolute_import,這樣import webchat_sdk.basic應該沒問題了。

在 Python 2 裡面可以使用 import foo來導入相同目錄包下的模塊foo,在 Python 3 裡面就是導入的項目根目錄(最上層有__init__.py的目錄)包foo。 也就是說 Python 3 默認就是絕對導入的,import .foo只是相對於絕對導入來說的,並不是相對導入。

『柒』 在python中如何導入兩個不同目錄下自定義的模塊呢

1
2

import sys
print sys.path

上面的代碼會給出所有可用的python路徑,你把.py文件放到這些路徑下面就可以在其他文件里導入它了。
另外一個特殊的路徑就是當前路徑,比如你在一個文件夾test下新建兩個.py文件,分別為123.py 和456.py ,那麼你可以在123.py寫:

1

import 456

就可以導入456.py了。

python的模塊都是.py文件,提示invaild syntax 是說語法錯誤。如果你用的是python3,那你的print就寫錯了。python2和3的print 區別如下。

1
2

print 'hello world' #python2
print('hello world') #python3

『捌』 python導入子目錄的子目錄的模塊,提示找不到

其實你的描述不是很清楚 子目錄是綁定域名的么 通過什麼域名來訪問? 因為這個程序的資料庫連接用的地址最前面加了/,是相對於根目錄而言的所以如果是http://域名/子目錄 來訪問的話 就更改為Const ACCESSPATH="/子目錄/######/shotan.mdb" '資料庫路徑
Const BACKACCESSPATH="/子目錄/######/#shotan.mdb" '備份資料庫路徑 或者另外一個方法就是用父路徑來表示,那就看你的conn.asp相對於網站首頁的位置如果與首頁就是當前這個網站的根目錄相同文件夾,就去掉開始的/,改成Const ACCESSPATH="######/shotan.mdb" '資料庫路徑
Const BACKACCESSPATH="######/#shotan.mdb" '備份資料庫路徑 如果conn.asp在某個文件夾里,比如include文件夾,就加個父路徑../,改成Const ACCESSPATH="../######/shotan.mdb" '資料庫路徑
Const BACKACCESSPATH="../######/#shotan.mdb" '備份資料庫路徑 後面這種方法比較適合於把網站放在任何地方 然後其他的比如圖片,flash,css的連接地址也如同資料庫一樣修改

『玖』 如何導入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 中如何 import 父目錄中的模塊

在 python 中,如果當前目錄中存在有 __init__.py 文件,則表示該目錄為一個包(package),在包中,引用同級目錄或子目錄中的其它模塊非常簡單,直接使用 import 語句即可,並且如果是同級目錄,沒有 __init__.py 文件亦可。但如何導入父目錄中的其它模塊呢,在 python 的世界裡,沒有像 C 中直接使用 ../ 來退級的方式,像 import ../test 這樣的語句是不合法的。其它,如果理工清楚了 import 語句的工作原理,就好辦了,import 工作時,就是根據模塊名,從 sys.path 所包含的路徑中尋找對應的模塊名,如果能找到,則將其它導入到當前運行環境,根據這個規則,有如下兩種方式解決上述問題:
1、修改 sys.path 法:在導入父目錄中的模塊前,先修改 sys.path 的值,如導入父目錄中的 test 模塊,導入方法如下:import syssys.path.insert(0, "..") ;# or�0�2 sys.path.append("..")
2、將包的根目錄以外鏈的形式加入到 sys.path 中,即在 {PYTHON-HOME}\lib\site-packages 中新建一個 .pth 文件,文件內容為包根路徑,假設包的根目錄為 d:/py/mytest/,則可以在 {PYTHON-HOME}\lib\site-packages 目錄下建一個 mytest.pth 的文件,內容為 d:/py/mytest。完成上述步驟後,則可以在任何模塊中像導入已安裝的系統包一樣導入 mytest 包或是該包下的所有模塊,如 import mytest。注意,由於 python 的版本不同,在 v2.5 版以後,需要在 __init__.py 文件中顯示地使用 __all__ 變數指明當前包下有哪些模塊,要不此包是無法正常導入和工作地

閱讀全文

與python導入上級目錄模塊相關的資料

熱點內容
管家婆輝煌2加密狗挪到另一台電腦 瀏覽:760
摩托車在哪裡app看考題 瀏覽:356
蘋果5app在哪裡設置 瀏覽:737
如何查看伺服器的磁碟使用 瀏覽:165
python蒙特卡洛模型投點圖 瀏覽:330
安卓手機屬於什麼介面 瀏覽:742
微信群推廣網站源碼 瀏覽:764
九江離鷹潭源碼 瀏覽:719
python可以當作函數的返回值 瀏覽:422
地鐵逃生體驗服怎麼進入安卓 瀏覽:833
齊魯工惠app的中獎記錄在哪裡 瀏覽:759
linuxkill命令詳解 瀏覽:103
dhcp伺服器動態分配地址 瀏覽:265
門禁卡加密了能破解嗎 瀏覽:215
在哪裡下載百度網盤app 瀏覽:917
伺服器要升級什麼意思 瀏覽:831
銀行還房貸解壓方法 瀏覽:702
伺服器主機辦公如何提速 瀏覽:920
cad列印為pdf 瀏覽:418
賣手錶的app哪裡可以賣 瀏覽:55