import module1,module2,module3……
from module1 import *
from module1 import prt as print_m1
#注意:直接使用import module1的時候,呼叫module1裡的prt方法應該使用如下寫法:
module1.prt()
#如果使用from module1 import *的時候應該這樣寫(如果不想匯入全部方法只想匯入部分,可以把*換成相應的方法名)
prt()
#這裡可以看出,from的格式是將module1裡的**拷貝出來,複製到當前位置並執行,因此不需要加字首。
#如果當前檔案中有定義了乙個和匯入模組中同名的方法,而執行的時候又不想覆蓋,則可以使用如下寫法:
from module1 import prt as print_m1
#注意:此時匯入模組中的方法執行的時候不再是prt(),而是print_m1()。
1、import module1 相當於 module1=all_code (module1裡的所有**)
#因此使用import方法時,呼叫模組裡的方法應該是:module1.prt()
2、from module1 import prt 相當於把prt()這個方法的**拷貝到當前檔案裡
#因此呼叫方法時可以直接prt()
目錄如下:
conf裡的__init__.py檔案:
# encoding: utf-8
'''# @author : ccq
# @file : __init__.py.py
# @time : 2019/6/16 11:37
'''from . import settings # 相對路徑匯入寫法(.表示相對路徑)
#from . import settings 這樣的寫法是用來匯入同級目錄下的檔案的。
settings檔案:
# encoding: utf-8
'''# @author : ccq
# @file : settings.py
# @time : 2019/6/16 11:37
'''def testfunc():
print("this is settings")
imp檔案:
# encoding: utf-8
'''# @author : ccq
# @file : imp.py
# @time : 2019/6/20 20:14
'''import conf
conf.settings.testfunc()
匯入模組和包時可以通過print(sys.path)來檢視當前目錄,如果當前目錄下沒有要匯入的檔案,就會報錯。
通過 print(os.path.abspath(__file__)) 這段**,可以看到當前檔案的路徑。
通過os.path.dirname(os.path.abspath(__file__))**,查詢當前檔案的父目錄路徑。
#os.path.dirname()是查詢查詢當前檔案的父目錄路徑,os.path.abspath(__file__)是當前檔案的路徑。二者缺一不可。
#下面是乙個小例子:
# encoding: utf-8
'''# @author : ccq
# @file : atm.py.py
# @time : 2019/6/16 11:36
'''# 啟動檔案
import os, sys
base_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
from conf import settings
from core import main
main.prt()
#結構圖如下:
#當乙個py檔案中重複出現另外模組裡的方法呼叫時,例如:
# encoding: utf-8
'''# @author : ccq
# @file : imp.py
# @time : 2019/6/20 20:14
'''import module_test
def function1():
module_test.testfunc()
def function2():
module_test.testfunc()
def function3():
module_test.testfunc()
def function4():
module_test.testfunc()
def function5():
module_test.testfunc()
#conf.settings.testfunc()這段**重複了很多次。這段**的意思是到conf包下的settings檔案裡去呼叫testfunc()方法,如果每一次都去找,將產生大量不必要的消耗。這時可以採用如下方法:
# encoding: utf-8
'''# @author : ccq
# @file : imp.py
# @time : 2019/6/20 20:14
'''from module_test import testfunc
def function1():
testfunc()
def function2():
testfunc()
def function3():
testfunc()
def function4():
testfunc()
def function5():
testfunc()
function1()
#這樣可以減少消耗,來達到優化的效果
模組分為三大類:
標準庫開源模組
自定義模組
西天取經python之路 DAY(十四)
目錄 range 模組 range模組常用方法 range模組例項 4位驗證碼例項 備註 encoding utf 8 author ccq file randomtest.py time 2019 8 3 15 37 import random print random.random 0 1之間的...
西天取經真相之二(悟空採訪實錄)
花果山一自稱孫悟空的精神病人,逢人便聲稱自己是 齊天大聖 此人經常搶奪行人財物,調戲婦女,還佔道經營,擾亂城市秩序,引起廣大天庭群眾的強烈不滿。本著人道主義考慮,天庭有關部門多次組織居委會老大媽做其思想工作,但勸阻無效。而後,城管大隊長二郎神親自前往做說服工作。沒想到,這位精神病患者竟然對人民的好城...
從西天取經看ERP的實施哲學
談到西遊記,很容易被大家第乙個想到的就是美猴王,而實施顧問在面對乙個erp專案的時候通常也會得到這種待遇。但是別忘記只有齊天大聖是取不回真經的,同理我們顯然也不能指望單靠乙個神勇無比的顧問搞掂整個專案。毋庸諱言,資訊化這事兒不容易,對於廣大中小型企業來說就更難 時間緊任務重,兼有許多繞不過去的關鍵環...