python shell命令行中import多層目錄下的模塊操作
首先在文件夾中添加_init_.py文件,即使是空文件也可以,多層文件夾,每層文件夾中都要添加。
比如我要import,a文件夾中,b文件夾下的 c.py
我就需要在a,b文件夾中都添加_init_.py文件。
然后引入方式:import a.b.c
然后在調(diào)用c.py的函數(shù)時(shí),直接c.f()是不行的,需要a.b.c.f()。
當(dāng)然也可以先寫 c = a.b.c,然后再c.f()。
補(bǔ)充知識(shí):Python IDLE shell中引入模塊
安裝了Python之后,會(huì)自帶一個(gè)Python IDLE,打開之后就是一個(gè)Python shell, 在這個(gè)Python shell中想引入模塊,也就是自己寫好的python腳本文件的話,有個(gè)路徑問題。
如果你把文件放到安裝目錄的默認(rèn)shell目錄下面,那么引入是沒問題的,打開File菜單下的Path Browser,可以看到。
如果你的python腳本文件是放在自己的目錄下,比如我的D:Projectspython目錄下,那么引入是會(huì)失敗的:
>>> import fiboTraceback (most recent call last): File '<pyshell#0>', line 1, in <module> import fiboModuleNotFoundError: No module named ’fibo’>>>
那么,如何添加我們自己的項(xiàng)目目錄呢?就是sys.path這個(gè)變量
Python 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:57:15) [MSC v.1915 64 bit (AMD64)] on win32Type 'help', 'copyright', 'credits' or 'license()' for more information.>>> import sys>>> sys.path.append('D:Projectspython')>>> sys.path[’’, ’D:Program FilesPython37Libidlelib’, ’D:Program FilesPython37python37.zip’, ’D:Program FilesPython37DLLs’, ’D:Program FilesPython37lib’, ’D:Program FilesPython37’, ’D:Program FilesPython37libsite-packages’, ’D:Projectspython’]>>> import fibo>>> fibo.fib(1000)1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987
先import sys,引入sys這個(gè)模塊
然后添加我們的目錄到sys.path這個(gè)列表中就可以了,接下來我們就可以引入我們項(xiàng)目文件夾中的模塊也就是我們的腳本文件了。
以上這篇python shell命令行中import多層目錄下的模塊操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. jsp網(wǎng)頁實(shí)現(xiàn)貪吃蛇小游戲2. jsp+servlet簡(jiǎn)單實(shí)現(xiàn)上傳文件功能(保存目錄改進(jìn))3. JavaScript實(shí)現(xiàn)組件化和模塊化方法詳解4. ASP.NET MVC遍歷驗(yàn)證ModelState的錯(cuò)誤信息5. HTML5 Canvas繪制圖形從入門到精通6. .Net Core和RabbitMQ限制循環(huán)消費(fèi)的方法7. 淺談SpringMVC jsp前臺(tái)獲取參數(shù)的方式 EL表達(dá)式8. SpringMVC+Jquery實(shí)現(xiàn)Ajax功能9. ASP中if語句、select 、while循環(huán)的使用方法10. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說明
