Python 3.8.0穩定版
部分新特性:
• PEP 572,賦值+表達式
:=可以將一個表達式或者一個
if (n := len(a)) > 10:#表達式仍然用,賦值也放一起,后面不用多次寫表達式,直接寫n即可,可以為后面的重復使用省一次 print(f"List is too long ({n} elements, expected <= 10)")
• PEP 570,僅位置的參數
def f(a, b, /, c, d, *, e, f): print(a, b, c, d, e, f)
/左側必須為之傳參,右側c,d可以是關鍵字可以是位置傳參,e,f必須關鍵字傳參
• PEP 587,Python初始化配置(改進嵌入)
• PEP 590,Vectorcall:用於CPython的快速調用協議
• PEP 578,運行時審核掛鈎
• PEP 574,帶外數據的Pickle協議5
• Typing相關(Typing-related):PEP 591,PEP 586和PEP 589
• 並行文件系統緩存,用於編譯的字節碼
• 調試版本與發行版本共享ABI
• typed_ast被合並回CPython
• LOAD_GLOBAL現在快40%
• pickle現在默認使用協議4,提高了性能