五星函式*****1.和資料結構相關:print() sum reversed
key : min max map sorted filter zip
列表和元祖:
list,將乙個可迭代物件轉化為列表,如字典轉化為列表(預設鍵字典的鍵轉化)
tuple,將乙個迭代物件轉化為元祖,如字典轉化為元祖(預設鍵字典的鍵轉化)
reversed 將乙個序列翻轉,並返回翻轉後的序列的迭代器*****
s = ['a','b','c','d']a = reversed(s)
for i in range(4):
print(next(a))
slice :構造乙個切片物件,用於切片 ***
s = [1,2,34,56,7,8,9,0,9]a = slice(1,5,2)
print(s[a])
str:將資料轉化為字串
format,可用於格式化輸出外,還可以用於計算小數,精算等**
print(format('test','<10'))print(format('test','>10'))
print(format('test','^10'))
bytes, unicode轉化bytes型別****
a1 = '黎明'print(a1.encode('utf-8'))
print(a1.encode('utf-8').decode('utf-8'))
a2 = '李明'b2 = bytes(a2,encoding='utf-8')
print(a2)
2.repr返回乙個物件的string形式(原型畢露)*****
print('黎明')print(repr('黎明'))
print(repr(""))
print(repr('人生%s年' % repr('千')))
3.sorted :對可迭代物件進行序列排序,形成乙個新列表,原列表不變(可迭代物件需要時同一種資料型別)。 *****
s = ['w','e','r']# s = [1,2,34,5,6,78]
print(sorted(s))
print(s)
d = sorted(s)
print(d)
print(s)
l2 = [(1,1000),(2,18),(4,250),(3,500)]print(sorted(l2))
def num(x):
return x[1]
print(sorted(l2,key=num))
多條件判斷:all,any
all:可迭代物件中,全部為true 才是true
any:可迭代物件中,有乙個true,為true
l1 = [1,2,3,44,(),]print(all(l1))
print(any(l1))
4.zip,將多個iter,每乙個縱向組成乙個元祖,並返回iter,以最短的為標準 *****
l1 = [1,2,3,6,7]tu1 = ('s','d', 'd', 'f')
dic =
print(zip(l1,tu1,dic))
print(list(zip(l1,tu1,dic)))
for i in zip(l1,tu1,dic):
print(i)
filter :過濾,迭代器*****
l = [ i for i in range(12)]def num(x):
return x % 2 == 1
print(list(filter(num,l)))
map:會根據提供的函式對指定序列做對映,迴圈模式:
l = [1,23,4,5,6,7,8]print([i**2 for i in l])
l = [i**2 for i in l]
print(l)
def num(x):
return x**2
print(set(map(num,l)))
print(list(map(num,l)))
print(tuple(map(num,l)))
5.匿名函式:lambda表示式
普通函式,有且只有return的函式才可以用匿名函式優化,一行**
def num(x):return x**2
num = lambda x:x**2
匿名函式一般跟內建函式配合使用
print(sorted([(1,1000),(2,18),(4,250),(3,500)],key=lambda x:x[1]))
6,:遞迴函式:預設遞迴深度998
def num(x):print(x)
x += 1
num(x)
num(1)
設定遞迴次數:
import syssys.setrecursionlimit(10000)
def num(x):
print(x)
x += 1
num(x)
num(1)
內建函式(2)
22 內建函式 2 1.callable 判斷乙個物件是不是可呼叫的。函式式可以呼叫的,name nihao 不可呼叫。2.chr 和ord 根據的是ascii表 例 chr 65 的到a ord b 得到66。利用這個可以寫乙個生成隨機驗證碼的程式 import random 使用random模組...
內建函式2
元祖和列表 list 將乙個可迭代物件轉化成列表,如果是字典,預設將key作為列表的元素 tuple 將乙個可迭代物件轉化成元祖,如果是字典,預設將key作為元祖的元素 reversed 將乙個序列翻轉,並返回此翻轉序列的迭代器。li 1,6,2,9,4,5 reversed li print re...
內建函式2
import time for i in range 1,101,2 time.sleep 0.1 char num i 2 per str r s s n i,char num if i 100 else r s s i,char num print per str,end flush true ...