python3.8新特性
python3.8新功能
Python3.8穩定版已發布,官網發布了一篇介紹新特性的文章,在此記錄。
新增賦值運算子:=
作用:把較大表達式中的某部分值賦給變數,因為看起來像海象的眼睛和牙齒,:= 操作符有個特別的名字:海象運算子
範例1:
if (n := len(a)) > 10: print(f"List is too long ({n} elements, expected <= 10)")
用了:= ,避免呼叫len() 兩次。
新增(僅限位置參數)的語法符號 /
作用:表示一些函數的參數,必須指定位置,且不能用作關鍵字參數。
範例
def f(a, b, /, c, d, *, e, f): print(a, b, c, d, e, f)
在這個範例中,參數a 和b 是僅限位置參數的,而c 或d可以是僅限位置參數,也可以是關鍵字參數,e 和f 必須是關鍵字參數。
新增PYTHONPYCACHEPREFIX 設定(-X pycache_prefix)
作用:把隱式字節碼緩存,配置為使用單獨的平行檔案系統樹,而不是在每個來源目錄中使用預設的pycache 子目錄。
調試版本與發行版本共享ABI
f 字串新支援= 說明符,用於自記錄表達式和偵錯
f 字串是格式化的字串文字,它是在Python 3.6 中引入的,已經非常流行。
這次在 v3.8 中新增支援 = 說明符。
>>> user = 'eric_idle'>>> member_since = date(1975, 7, 31)>>> f'{user=} {member_since=}'"user='eric_idle' member_since=datetime.date(1975, 7, 31)" >>> delta = date.today() - member_since>>> f'{user=!s} {delta.days=:,d}''user=eric_idle delta.days=16,075'
PEP 578: Python Runtime Audit Hooks / 運行時審計掛鉤
PEP 新增了審計掛鉤和驗證開放掛鉤。這兩個版本都可以從Python 和原生程式碼(native code)中獲得,允許用純Python 程式碼編寫的應用程式和框架利用額外的通知,同時還允許嵌入式人員或系統管理員在始終啟用審計的情況下部署Python 建置。
PEP 587: Python Initialization Configuration
PEP 587 新增了一個新的C API,來配置Python 初始化,提供對整個配置的更好控制和更好的錯誤報告。
其他
continue 終於可以合法出現finally: 區塊中了;
在Windows ,預設的非同步(asyncio)事件循環改成了ProactorEventLoop
在macOS 上, spawn start 方法預設加到multiprocessing 中了
現在multiprocessing可以使用共享記憶體段,來避免進程間的pickle 開銷;
##typed_ast 被共享記憶體段,來避免進程間的pickle 開銷;##typed_ast 被被指派合併回CPython 了;
LOAD_GLOBAL 現在快了40%;
pickle 現在預設使用協定4,提高了效能;
眾多python培訓影片,盡在python學習網,歡迎線上學習!
以上是python3.8新特性的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Linux終端中查看Python版本時遇到權限問題的解決方法當你在Linux終端中嘗試查看Python的版本時,輸入python...

使用FiddlerEverywhere進行中間人讀取時如何避免被檢測到當你使用FiddlerEverywhere...

如何在10小時內教計算機小白編程基礎?如果你只有10個小時來教計算機小白一些編程知識,你會選擇教些什麼�...

在使用Python的pandas庫時,如何在兩個結構不同的DataFrame之間進行整列複製是一個常見的問題。假設我們有兩個Dat...

Uvicorn是如何持續監聽HTTP請求的? Uvicorn是一個基於ASGI的輕量級Web服務器,其核心功能之一便是監聽HTTP請求並進�...

攻克Investing.com的反爬蟲策略許多人嘗試爬取Investing.com(https://cn.investing.com/news/latest-news)的新聞數據時,常常�...
