Python特殊函式
阿新 • • 發佈:2018-11-21
-
-
它可接受:1.程式碼字串 2.檔案物件 3.程式碼物件 4.tuple
>>> exec('a=2') >>> a 2 >>> exec('print(\'5\')') 5
-
-
eval():接受一個字串物件,把字串變成一個合法的表示式
>>> eval('1+1') 2
-
repr():接受一個表示式,把表示式變成字串
>>> repr(1+2)
-
range():範圍函式
-
zip():返回一個迭代器,將對應的序列對應索引位置拼接成一個二元組,若序列不同,以短的為主。
>>> a = [1,2,3] >>> b = ('a','b','c') >>> zip(a,b) <zip object at 0x0000024DD98036C8> >>> list(zip(a,b)) [(1, 'a'), (2, 'b'), (3, 'c')]
-
map(func, *iterables):返回一個迭代器
>>> map(lambda
-
filter(function or None, iterable):過濾作用,返回一個迭代器,和列表推導式作用相同
>>> numbers = range(-5,5) >>> numbers [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4] >>> filter(lambda x: x>0, numbers) [1, 2, 3, 4] >>> [x for x in numbers if x>0] #與上面那句等效 [1, 2, 3, 4]
-
isinstance(obj, class_or_tuple, /):除了可以判斷物件的型別,還可以判斷該物件是否是該類的子類,返回值為bool值。
>>> isinstance(1,str) False >>> isinstance(1,int) True class Person(): def __init__(self): pass p = Person() print(isinstance(p,Person)) True
-
enumerate(iterable[, start]):把可迭代物件的索引和值包裝成一個元組返回。
>>> b = list(enumerate('sedf')) >>> b [(0, 's'), (1, 'e'), (2, 'd'), (3, 'f')]
-
divmod():地板除取餘函式 //
>>> divmod(9,4) (2, 1)
-
pow():冪值函式
-
getattr(object,name,default) :
-
object--物件
name--字串,物件屬性
default--預設返回值,如果不提供該引數,在沒有對於屬性時,將觸發AttributeError。
class Person(): age = 20 def __init__(self): self.name = 3 p = Person() print(isinstance(p,Person)) print(getattr(p,'name'))、 3
-
持續更...