【python基礎】常用的內建函式 python基礎之內建函式
阿新 • • 發佈:2018-11-24
python基礎之內建函式
參考:
http://www.runoob.com/python/python-built-in-functions.html
-zip()
zip函式接受任意多個(包括0個和1個)序列作為引數,返回一個tuple列表
例項1:
x = [1, 2, 3] y = [4, 5, 6] z = [7, 8, 9] xyz = zip(x, y, z) print(xyz) #執行的結果是: #[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
例項2:
x = [1, 2, 3] y = [4, 5, 6, 7] xy= zip(x, y) print(xy) #執行的結果是: #[(1, 4), (2, 5), (3, 6)]
例項3:
x = [1, 2, 3] y = [4, 5, 6] z = [7, 8, 9] xyz = zip(x, y, z) u = zip(*xyz) print(u) #執行的結果是: #[(1, 2, 3), (4, 5, 6), (7, 8, 9)] """ 一般認為這是一個unzip的過程,它的執行機制是這樣的: 在執行zip(*xyz)之前,xyz的值是:[(1, 4, 7), (2, 5, 8), (3, 6, 9)] 那麼,zip(*xyz) 等價於 zip((1, 4, 7), (2, 5, 8), (3, 6, 9)) 所以,執行結果是:[(1, 2, 3), (4, 5, 6), (7, 8, 9)] 注:在函式呼叫中使用*list/tuple的方式表示將list/tuple分開,作為位置引數傳遞給對應函式(前提是對應函式支援不定個數的位置引數)"""
例項4:
x = [1, 2, 3] r = zip(* [x] * 3) print (r) """ 執行的結果是: [(1, 1, 1), (2, 2, 2), (3, 3, 3)] 它的執行機制是這樣的: [x]生成一個列表的列表,它只有一個元素x [x] * 3生成一個列表的列表,它有3個元素,[x, x, x] zip(* [x] * 3)的意思就明確了,zip(x, x, x) """
-max()+min()
age_dict = {'age1':20, 'age2':30, 'age3':12,'age4':56, 'age5':8} print(max(age_dict.values())) print(list(zip(age_dict.values(),age_dict.keys()))) for item in zip(age_dict.values(),age_dict.keys()): print(item) print(max(zip(age_dict.values(),age_dict.keys()))) print(min(zip(age_dict.values(),age_dict.keys()))) """ 執行結果: 56 [(20, 'age1'), (30, 'age2'), (12, 'age3'), (56, 'age4'), (8, 'age5')] (20, 'age1') (30, 'age2') (12, 'age3') (56, 'age4') (8, 'age5') (56, 'age4') (8, 'age5') """
#bin()將十進位制轉化為二進位制 print(bin(10)) #0b1010 #hex()將十進位制轉化為十六進位制 print(hex(10)) #0xa #oct()將十進位制轉化為八進位制 print(oct(10)) #0o12 #bool() 返回一個值的真假 print(bool(0)) #False print(bool('hello')) #True #bytes() 轉化為二進位制編碼,要指定原來的編碼如 utf8,gbk,gb2312 print(bytes("你好",encoding='utf8')) #b'\xe4\xbd\xa0\xe5\xa5\xbd' #chr() 將一個數字轉化為對應的ASCII碼值 print(chr(97)) #a print(chr(65)) #A #ord() 將ASCII對於字元轉化為數字 print(ord('a')) #97 #dir() 檢視一個函式的所有方法 或者獲得當前模組的屬性列表 import time print(dir(time)) #['_STRUCT_TM_ITEMS', '__doc__', '__loader__', '__name__', '__package__', # '__spec__', 'altzone', 'asctime', 'clock', 'ctime', 'daylight', 'get_clock_info', # 'gmtime', 'localtime', 'mktime', 'monotonic', 'perf_counter', 'process_time', 'sleep', # 'strftime', 'strptime', 'struct_time', 'time', 'timezone', 'tzname'] #divmod() 取餘數 print(divmod(10,3)) #1 #eval() 用來執行一個字串表示式,並返回表示式的值,或者將類似於字典的字串轉化為字典 x = 3 print(eval('3*x')) #9 print(eval('abs(-x)')) #3 print(eval("{'kk':'vv'}")) #{'kk': 'vv'} #id() 函式用於獲取物件的記憶體地址 print(id('aa')) #isinstance() 函式來判斷一個物件是否是一個已知的型別,類似 type() print(isinstance(1,str)) #False print(isinstance(1,int)) #True #reverse() 函式用於反向列表中元素 li = [1,3,4,6,8] li.reverse() print(li) #[8, 6, 4, 3, 1]