python 內建方法(1)
阿新 • • 發佈:2019-01-04
- abs(x)
返回一個數的絕對值。可以是長整型,小數等等。
>>> abs(-9)
9
>>> abs(-0.9)
0.9
>>> abs(-9999L)
9999L
- all(iterable)
檢測一個可迭代的物件中的值是否都為真。注意為空的時候也返回True。
def all(iterable):
for element in iterable:
if not element:
return False
return True
>>> a = [1 , 2, 3]
>>> all(a)
True
>>> b = [1, 0, 3]
>>> all(b)
False
>>> c = []
>>> all(c)
True
any(iterable)
如果可迭代物件中有一個值為True,則返回True。否則返回空。如果是空的可迭代物件返回False。basestring()
str 和 unicode 的超類(父類),也是抽象類,因此不能被呼叫和例項化,但可以被用來判斷一個物件是否為 str 或者 unicode 的例項,isinstance(obj, basestring) 等價於 isinstance(obj, (str, unicode))。bin(x)
返回一個整數 int 或者長整數 long int 的二進位制表示。callable(object)
用來檢測物件是否可被呼叫。
>>> callable(a)
False
>>> def test():
... pass
...
>>> callable(test)
True
>>> 1()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'int' object is not callable
類物件都是可被呼叫物件,類的例項物件是否可呼叫物件,取決於類是否定義了call方法。
>>> class A: #定義類A
pass
>>> callable(A) #類A是可呼叫物件
True
>>> a = A() #呼叫類A
>>> callable(a) #例項a不可呼叫
False
>>> a() #呼叫例項a失敗
Traceback (most recent call last):
File "<pyshell#31>", line 1, in <module>
a()
TypeError: 'A' object is not callable
>>> class B: #定義類B
def __call__(self):
print('instances are callable now.')
>>> callable(B) #類B是可呼叫物件
True
>>> b = B() #呼叫類B
>>> callable(b) #例項b是可呼叫物件
True
>>> b() #呼叫例項b成功
instances are callable now.
- cmp(x, y)
如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。
>>> print "cmp(110, 100) : ", cmp(110, 100)
cmp(110, 100) : 1
>>> print "cmp(100, 100) : ", cmp(100, 100)
cmp(100, 100) : 0
>>> print "cmp(80, 100) : ", cmp(80, 100)
cmp(80, 100) : -1