Python-常用的內建函式
阿新 • • 發佈:2019-01-22
Python在設計上堅持了清晰劃一的風格,這使得Python成為一門易讀、易維護,並且被大量使用者所歡迎的、用途廣泛的語言。接下來,記錄一些本人自主學習Python的一些筆記:
all
一個可迭代物件的所有元素都為真,則返回True
print(all([1,2,3])) # True
print(all([0,1,2])) # False
any
一個可迭代物件中只要有一個元素為真,則返回True
print(any([1,0,0])) # True
print(any([0])) # False
bin
將一個十進位制數字轉化成一個二進位制數字的字串
print(bin(2)) # 0b10
hex
將一個十進位制數字轉化成一個十六進位制數字的字串
print(hex(2)) # 0x2
oct
將一個十進位制數字轉化成一個八進位制數字的字串
print(oct(8)) # 0o2
callable
判斷一個物件是否是可以被呼叫的,那麼什麼樣才是可被呼叫的呢,即類似於“test()”這樣的寫法。函式與類皆可以被呼叫
b = 2
def func():
pass
print(callable(b),callable(func)) # False True
exec
將一串程式碼字串,以程式碼的形式執行
code = '''
n = 0
while n < 10:
print(n)
n+=1
'''
exec(code)
執行結果:
eval
將一串基本資料型別的字串,轉化成基本資料型別
s_list = "[1,2,3,4]"
l = eval(s_list) # 此時l已經是一個列表物件了
print(l[0]) # 1
dir
檢視某個型別下的所有方法
l = [1,2,3]
print(dir(l)) # 此時將會列印列表的所有方法
divmod
獲取兩個數相除後的商和餘數
print(divmod(5 ,2)) # 結果:(2,1)。5除以2得到商2,餘數為1
max
獲取某個可迭代物件的最大值
print(max([4,3,2,8])) # 結果:8
min
獲取某個可迭代物件的最小值
print(min([4,3,2,8])) # 結果:2
sum
獲取某個可迭代物件的和
print(sum([4,3,2,8])) # 結果:17
pow(a,b)
獲取a的b次方
print(pow(3,3)) # 結果:27
type
檢視資料型別
print(type("abc")) # 結果:<class 'str'>
round
保留小數
print(round(1.345,2)) # 結果:1.34
filter
將一個可迭代物件按某種特定方式過濾,生成一個新的可迭代物件
f = filter(lambda x : x > 5,range(10))
for index in f:
print(index) # 列印結果:6,7,8,9
map
將一個可迭代物件按某種特定方式處理,生成一個新的可迭代物件。效果與列表生成式一樣
m = map(lambda x : x * 2,range(10))
for index in m:
print(index)
# 列表生成式寫法
l = [x * 2 for x in range(10)]
for index in l:
print(index)
執行結果:
frozenset
將一個可迭代物件轉化成一個不可變的,如將列表原來可以呼叫append方法,轉化以後將不可呼叫append方法
sorted
排序
# 列表的排序
l = [3,2,4,8]
print(sorted(l)) # 結果:[2,3,4,8]
# 字典的排序。眾所周知,字典是無序的,首先先將字典轉化成一個元組列表,在根據key或者value排序
d = {"b":2,"d":1,"a":4}
l = sorted(d.items()) # 根據key排序
print(l) # 結果:[('a', 4), ('b', 2), ('d', 1)]
l = sorted(d.items(),key=lambda x:x[1]) # 根據value排序
print(l) # 結果:[('d', 1), ('b', 2), ('a', 4)]
zip
將兩個或多個列表拼接成一個元組列表
list_1 = [1,2,3,4]
list_2 = ['a','b','c','d']
z = zip(list_1,list_2)
for index in z:
print(index)
執行結果:
__import__
相當於import,只不過import()中傳入的模組的字串名稱