Python 海象運算子

EricZHAOedu發表於2020-12-31

Python 海象運算子

#需求:如果字串a大於10返回一個英文結果
a='hello'

#以前的操作方法
length=len(a)
if length>10:
    print('....')

#海象運算子
if (n := len(a)) > 10:	#使用的時候直接完成賦值給n
    print(f"List is too long ({n} elements, expected <= 10)")
#避免程式碼過長

#在讀取文件的時候的應用
while (block := f.read(256)) != '':	#更簡潔
    process(block)
    
#我比較多的應用
a='asdasd'

print(f'{a}好長啊有{n}這麼長' if (n:=len(a))>5 else "不是很長哦") #把運算結果直接賦值給變數,
#變數可以在程式碼內直接執行,用多了,看起來更簡潔和舒服

相關文章