作者:Vamei
Python内置(built-in)函數随着python解釋器的運作而建立。在Python的程式中,你可以随時調用這些函數,不需要定義。最常見的内置函數是:
print("Hello World!")
在Python教程中,我們已經提到下面一些内置函數:
基本資料類型 type()
反過頭來看看 dir() help() len()
詞典 len()
文本檔案的輸入輸出 open()
循環設計 range() enumerate() zip()
循環對象 iter()
函數對象 map() filter() reduce()
下面我采取的都是實際的參數,你可以直接在指令行嘗試效果。
數學運算
abs(-5) # 取絕對值,也就是5
round(2.6) # 四舍五入取整,也就是3.0
pow(2, 3) # 相當于2**3,如果是pow(2, 3, 5),相當于2**3 % 5
cmp(2.3, 3.2) # 比較兩個數的大小
divmod(9,2) # 傳回除法結果和餘數
max([1,5,2,9]) # 求最大值
min([9,2,-4,2]) # 求最小值
sum([2,-1,9,12]) # 求和
類型轉換
int("5") # 轉換為整數 integer
float(2) # 轉換為浮點數 float
long("23") # 轉換為長整數 long integer
str(2.3) # 轉換為字元串 string
complex(3, 9) # 傳回複數 3 + 9i
ord("A") # "A"字元對應的數值
chr(65) # 數值65對應的字元
unichr(65) # 數值65對應的unicode字元
bool(0) # 轉換為相應的真假值,在Python中,0相當于False
在Python中,下列對象都相當于False: [], (), {}, 0, None, 0.0, ''
bin(56) # 傳回一個字元串,表示56的二進制數
hex(56) # 傳回一個字元串,表示56的十六進制數
oct(56) # 傳回一個字元串,表示56的八進制數
list((1,2,3)) # 轉換為表 list
tuple([2,3,4]) # 轉換為定值表 tuple
slice(5,2,-1) # 建構下标對象 slice
dict(a=1,b="hello",c=[1,2,3]) # 建構詞典 dictionary
序列操作
all([True, 1, "hello!"]) # 是否所有的元素都相當于True值
any(["", 0, False, [], None]) # 是否有任意一個元素相當于True值
sorted([1,5,3]) # 傳回正序的序列,也就是[1,3,5]
reversed([1,5,3]) # 傳回反序的序列,也就是[3,5,1]
類,對象,屬性

# define class
class Me(object):
def test(self):
print "Hello!"
def new_test():
print "New Hello!"
me = Me()

hasattr(me, "test") # 檢查me對象是否有test屬性
getattr(me, "test") # 傳回test屬性
setattr(me, "test", new_test) # 将test屬性設定為new_test
delattr(me, "test") # 删除test屬性
isinstance(me, Me) # me對象是否為Me類生成的對象 (一個instance)
issubclass(Me, object) # Me類是否為object類的子類
編譯,執行
repr(me) # 傳回對象的字元串表達
compile("print('Hello')",'test.py','exec') # 編譯字元串成為code對象
eval("1 + 1") # 解釋字元串表達式。參數也可以是compile()傳回的code對象
exec("print('Hello')") # 解釋并執行字元串,print('Hello')。參數也可以是compile()傳回的code對象
其他
input("Please input:") # 等待輸入
globals() # 傳回全局命名空間,比如全局變量名,全局函數名
locals() # 傳回局部命名空間