西天取經python之路 DAY(十二)

2021-09-24 15:02:25 字數 3338 閱讀 6527

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專案的時候通常也會得到這種待遇。但是別忘記只有齊天大聖是取不回真經的,同理我們顯然也不能指望單靠乙個神勇無比的顧問搞掂整個專案。毋庸諱言,資訊化這事兒不容易,對於廣大中小型企業來說就更難 時間緊任務重,兼有許多繞不過去的關鍵環...