python中module或者module中函數的匯入:
1、import:模組名2、import:模組名 as 新名字3、from 模組名 import 函數名
說明:1、import 將整個模組匯入,當使用模組中的函數時,需在函數明前面加上:“模組名.”2、from 則是將模組中的函數匯入,當藥匯入多個函數,使用“,”分隔各個函數。當要匯入模組中的所有函數使用 ‘*’ 代替。使用函數是直接使用,不需要加:“模組名.”3、在Python中還可以通過使用內建函數reload重新載入模組。reload可以在模組被修改的情況下不必關閉python而重新載入模組,在使用它重新載入模組時,該模組必須已經事先被匯入。
編寫一個module:可以再模組中定義變數:name檔案名稱:test.py內容:def:show(): 定義一個函數 print "This is a test" name = “name test” 定義一個變數 使用模組檔案名稱:use.py內容:import test from test import show test.show() show()
模組的尋找路徑:在匯入模組時,python解譯器首先會在當前工作目錄中尋找匯入的模組。如果沒有找到,就在sys模組中的path變數指定的目錄中(import sys sys.path)尋找匯入的模組,如果還沒有找到,則發生錯誤.在指令碼中可以向sys.path變數中添加模組尋找路徑。將目前的目錄下的modules目錄加入到sys.path變數中eg:import os,sys modulepath = os.getcwd()+'/modules' 前目錄下的modules目錄 sys.path.append(modulepath)
module獨立運行:__name__屬性每個python指令碼在運行時都有一個__name__屬性,在指令碼中可以通過對__name__屬性值進行判斷,可以讓指令碼在作為
匯入module或獨立運行時都可以正確的運行。1、如果python指令碼是作為匯入模組,則__name__屬性被設定為模組名2、如果python指令碼是作為獨立啟動並執行,則__name__屬性被設定為__main__因此可以通過__name__屬性來判斷python指令碼的運行狀態。
dir()函數:如果需要獲得所匯入module中定義的所有變數和函數的名字等,可以使用dir()函數dir()函數的原型:dir([object]) 其中object是一個可選的參數,當參數為空白的時候,dir()函數將返回當前指令碼的所有名字列表。eg:import sys dir(sys)
可變長參數:使用可變長參數的函數,將其所有的參數儲存在一個元組裡面,在函數中可以用for迴圈來處理。聲明一個可變長參數的函數只需要一“*”開頭定義一個參數即可def listappend(*list): 可變長參數的定義
l=[]
for i in list:
l.extend(i)
return l
a=[1,2,3]
b=[4,5,6]
c=[7,8,9,0]
"two parameters"
print listappend(a,b)
print listappend(a,c)
print listappend(b,c)
"three parameters"
print listappend(a,b,c)python中函數參數的傳遞:1、按聲明函數時參數的順序進行傳遞2、按參數名傳遞主要是在帶有預設參數值的情況下,後者比較方便。def fun(x,y,z):
return x+y-z
fun(1,2,3) x=1,y=2,z=3 參數的順序進行傳遞
fun(z=1,x=2,y=3) 參數名傳遞fun(1,z=3,y=2) 合法fun(z=3,y=2,1) 不合法,順序不對fun(5,z=6,x=7) 不合法,重複
注意:按順序傳遞的參數要位於按參數名傳遞的參數之前,而且不能有重複的情況。