本文將這68個內置函數綜合整理為12類,建議大家收藏學習。
print(bin(10)) print(hex(10)) print(oct(10)) pow(a, b) 求a的b次冪, 如果有三個參數,則求完次冪後對第三個數取餘print(abs(-3)) print(divmod(11,3)) print(round(4.50)) print(round(4.51)) print(pow(10,2,3)) print(sum([1,2,3,4,5,6,7,8,9,10])) print(min(5,3,9,12,7,2)) print(max(7,3,15,9,4,13))print(list((1,2,3,4))) print(tuple([1,2,3,4])) reversed() 將一個序列翻轉, 返回翻轉序列的迭代器lst = "你好啊"it = reversed(lst) print(list(it))
lst = [1, 2, 3, 4, 5, 6, 7]print(lst[1:3:1]) # [2,3]s = slice(1, 3, 1) print(lst[s])print(str(123)+'456')
print("{} {}".format("hello", "world")) print("{1} {0} {1}".format("hello", "world"))bs = bytes("今天吃飯了嗎", encoding="utf-8")print(bs)
ret = bytearray("alex" ,encoding ='utf-8')print(ret[0]) print(ret) ret[0] = 65 print(str(ret)) ascii() 返回一個表示對象的字符串, 但是對於字符串中的非 ASCII 字符則返回通過 repr() 函數使用 \x, \u 或 \U 編碼的字符print(ord('a')) print(ord('中'))
print(chr(65)) print(chr(19999))
for i in range(65536): print(chr(i), end=" ")
print(ascii("hello")) print(ascii("你好"))s = "今天\n吃了%s頓\t飯" % 3print(s) print(repr(s))集合:frozenset() 創建一個凍結的集合,凍結的集合不能進行添加和刪除操作。
len() 返回一個對象中的元素的個數
sorted() 對可迭代對象進行排序操作
lst = [5,7,6,12,1,13,9,18,5]lst.sort() print(lst)
ll = sorted(lst) print(ll)
l2 = sorted(lst,reverse=True) print(l2)lst = ['one', 'two', 'three', 'four', 'five', 'six']l1 = sorted(lst, key = lambda x: len(x))print(l1) # ['one', 'two', 'six', 'four', 'five', 'three']lst = ['one','two','three','four','five']for index, el in enumerate(lst,1): print(index) print(el)all() 可迭代對象中全部是True, 結果才是Trueany() 可迭代對象中有一個是True, 結果就是Trueprint(all([1,'hello',True,9])) print(all([1,'',True,9])) print(any([0,0,0,False,1,'good'])) zip() 函數用於將可迭代的對象作為參數, 將對象中對應的元素打包成一個元組, 然後返回由這些元組組成的列表. 如果各個迭代器的元素個數不一致, 則返回列表長度與最短的對象相同lst1 = [1, 2, 3, 4, 5, 6]lst2 = ['醉鄉民謠', '驢得水', '放牛班的春天', '美麗人生', '辯護人', '被嫌棄的松子的一生']lst3 = ['美國', '中國', '法國', '義大利', '韓國', '日本']print(zip(lst1, lst1, lst3)) # <zip object at 0x00000256CA6C7A88>for el in zip(lst1, lst2, lst3): print(el)# (1, '醉鄉民謠', '美國')# (2, '驢得水', '中國')# (3, '放牛班的春天', '法國')# (4, '美麗人生', '義大利')# (5, '辯護人', '韓國')# (6, '被嫌棄的松子的一生', '日本')def func(i): return i % 2 == 1 lst = [1,2,3,4,5,6,7,8,9]l1 = filter(func, lst) #l1是迭代器print(list(l1)) #[1, 3, 5, 7, 9]lst = [1,2,3]it = map(lambda x:x*x, lst) # [1,4,9]def func(): a = 10 print(locals()) # 當前作用域中的內容 print(globals()) # 全局作用域中的內容 print("今天乾貨滿滿")func()
# {'a': 10}# {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': # <_frozen_importlib_external.SourceFileLoader object at 0x0000026F8D566080>, # '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' # (built-in)>, '__file__': 'D:/pycharm/練習/week03/new14.py', '__cached__': None,# 'func': <function func at 0x0000026F8D6B97B8>}# 今天乾貨滿滿next() 迭代器向下執行一次, 內部實際使⽤用了__ next__()⽅方法返回迭代器的下一個項目iter() 獲取迭代器, 內部實際使用的是__ iter__()⽅方法來獲取迭代器for i in range(15,-1,-5): print(i)lst = [1,2,3,4,5]it = iter(lst) print(it.__next__()) print(next(it)) print(next(it)) print(next(it)) eval() 執行字符串類型的代碼,並返回最終結果compile() 將字符串類型的代碼編碼,代碼對象能夠通過exec語句來執行或者eval()進行求值s1 = input("請輸入a+b:") print(eval(s1)) s2 = "for i in range(5): print(i)"a = exec(s2)
print(a)
exec("""def func(): print(" 我是周杰倫")""" )func()
code1 = "for i in range(3): print(i)"com = compile(code1, "", mode="exec") exec(com)
code2 = "5+6+7"com2 = compile(code2, "", mode="eval")print(eval(com2))
code3 = "name = input('請輸入你的名字:')" com3 = compile(code3, "", mode="single")exec(com3)print(name)print("hello", "world", sep="*", end="@")
x = input() open() : 用於打開一個文件,可進行增刪查改等操作f = open('file',mode='r',encoding='utf-8')f.read()f.close()import : 用於動態加載類和函數,__ import__() 方法help() : 函數用於查看函數或模塊用途的詳細說明callable() : 用於檢查一個對象是否是可調用的,如果返回True,object有可能調用失敗;如果返回False,那調用絕對不會成功a = 10print(callable(a)) def f(): print("hello") print(callable(f)) f()