isinstance()
類似type(),但是如果要判斷兩個型別是否相同推薦使用 isinstance()。
isinstance()的語法:isinstance(object, classinfo)
object – 例項物件。
classinfo – 可以是直接或間接類名、基本型別或者由它們組成的元組。
比如:
isinstance (a,
(str,
int,list)
)# 是元組中的乙個返回 true
true
對於基本型別來說 classinfo 可以是:
int,float,bool,complex,str(字串),list,dict(字典),set,tuple
要注意的是,classinfo 的字串是 str 而不是 string,字典也是簡寫 dict。
2.預設引數:例子如下:
def enroll(name, gender, age=6, city=『beijing』):
比如呼叫enroll(『bob』, 『m』, 7),意思是,除了name,gender這兩個引數外,最後1個引數應用在引數age上,city引數由於沒有提供,仍然使用預設值。
注意:預設引數必須放在必選引數的後面;變化越小的預設引數放在越後面。
定義預設引數要牢記一點:預設引數必須指向不變物件!
3.可變引數
如下函式實現了a2 + b2 + c2 + ……,並且引數個數不確定:
def calc(numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
這個時候就適合使用可變引數,
在沒有使用可變引數之前,需要構建list或tuple傳入引數,如calc([1, 2, 3]),calc((1, 3, 5, 7))
而如果使用可變引數,就可以只需要如下呼叫函式的方式就可以了calc(1, 2, 3),calc(1, 3, 5, 7)
需要做的就只是在定義函式的時候,括號裡面的引數前面加乙個星號 * 即可:
def calc(*numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
呼叫該函式時,可以傳入任意個引數,包括0個引數,在呼叫該函式的時候,這些引數可以自動組裝成為乙個tuple。
如果已經有乙個list或者tuple,則採用如下方式:
nums =[1
,2,3
]calc(
*nums)
//也就是在變數名前加乙個星號。
*nums表示把nums這個list的所有元素作為可變引數傳進去。這種寫法相當有用,而且很常見。 python學習清單大全 python學習清單
學習單子 a部 python 大神vamei的blog之python篇 大神vamei的部落格很是推薦 各方面寫的都很好 我暫時只是看過他的python 網路和django的部分,看下來簡單易懂,很適合做個學習的大綱,然後靠自己日後不斷的充實進去。文章中也簡要的列出常用的一些命令語法之類的。pyth...
Linux學習筆記 命令大全
命令 功能date 獲取當前時間 cal獲取當前日期 pwd當前所在資料夾位置 cd 跳到總目錄 ls獲取目錄下面有哪些檔案 ls l 目錄下面所有資料夾或檔案的詳細資訊 若檔案詳細資訊最前面是 d 那麼這是乙個資料夾。最前面是 那麼這是乙個檔案 cd home 進入目錄下的home資料夾 clea...
學習筆記 android 系列樣式大全
1.android visibility 設定空間可見屬性 有三個值,visible 可見 invisible 不可見 gone 隱藏 區別是不可見選項在介面不保留空間所佔空間,隱藏選項時控制項所佔空間保留。中設定方法 view.setvisibility view.visible view.inv...