不卡一区二区三区四区_乱中年女人伦av一区二区_美洲天堂一区二卡三卡四卡视频 _国产一区在线精品_91精品国产品国语在线不卡_99在线精品视频_99这里都是精品_国产99久久精品_99re成人在线_亚洲二区在线视频_久久先锋资源网_国产69精品久久久久毛片_亚洲一区二区三区视频在线_91小视频免费观看_欧美制服丝袜第一页_欧美日韩视频在线一区二区

您現(xiàn)在所在的位置:首頁 >關(guān)于奇酷 > 行業(yè)動態(tài) > Python 3.11 正式版發(fā)布了

Python 3.11 正式版發(fā)布了

來源:奇酷教育 發(fā)表于:

Python 3 11 正式版發(fā)布了

  Error Tracebacks
 
  Python 這門編程語言對初學(xué)者非常友好,它具有易于理解的語法和強(qiáng)大的數(shù)據(jù)結(jié)構(gòu)。但對于剛剛接觸 Python 的人來說卻存在一個(gè)難題,即如何解釋當(dāng) Python 遇到錯(cuò)誤時(shí)顯示的 traceback。
 
  Python 3.11 將 Decorative annotation 添加到 tracebacks 中,以幫助用戶更快地解釋錯(cuò)誤消息。想要獲得這種功能,可以將以下代碼添加到 inverse.py 文件中。

 
  舉例來說,你可以使用 inverse() 來計(jì)算一個(gè)數(shù)的倒數(shù)。因?yàn)?0 沒有倒數(shù),所以在運(yùn)行下列代碼時(shí)會拋出一個(gè)錯(cuò)誤。
 
  注意嵌入在 traceback 中的 ^ 和~ 符號,它們指向?qū)е洛e(cuò)誤的代碼。與此前的 tracebacks 一樣,你應(yīng)該從底層開始,然后逐步向上。這種操作對發(fā)現(xiàn)錯(cuò)誤非常有用,但如果代碼過于復(fù)雜,帶注釋的 tracebacks 會更好。
 
  更快的代碼執(zhí)行
 
  Python 以速度慢著稱,例如在 Python 中,常規(guī)循環(huán)比 C 中的類似循環(huán)慢幾個(gè)數(shù)量級。
 
  Python 官方正在著手改進(jìn)這一缺陷。2020 年秋,Mark Shannon 提出了關(guān)于 Python 的幾個(gè)性能改進(jìn)。這個(gè)提議被稱為香農(nóng)計(jì)劃 (Shannon Plan),他們希望通過幾個(gè)版本的更新將 Python 的速度提高 5 倍。不久之后微軟正式加入該計(jì)劃,該公司正在支持包括 Mark Shannon、Guido van Rossum 在內(nèi)的開發(fā)人員,致力于「Faster CPython」項(xiàng)目的研究。
 
  「Faster CPython」項(xiàng)目中的一個(gè)重要提案是 PEP 659,在此基礎(chǔ)上,Python 3.11 有了許多改進(jìn)。
 
  PEP 659 描述了一種「specializing adaptive interpreter」。主要思想是通過優(yōu)化經(jīng)常執(zhí)行的操作來加快代碼運(yùn)行速度, 這類似于 JIT(just-in-time)編譯。只是它不影響編譯,相反,Python 的字節(jié)碼是動態(tài)調(diào)整或可更改的。
 
  
 
  研究人員在字節(jié)碼生成中添加了一個(gè)名為「quickening」的新步驟,從而可以在運(yùn)行時(shí)優(yōu)化指令,并將它們替換為 adaptive 指令。
 
  一旦函數(shù)被調(diào)用了一定次數(shù),quickening 指令就會啟動。在 CPython 3.11 中,八次調(diào)用之后就會啟動 quickening。你可以通過調(diào)用 dis() 并設(shè)置 adaptive 參數(shù)來觀察解釋器如何適應(yīng)字節(jié)碼。
 
  在基準(zhǔn)測試中,CPython 3.11 比 CPython 3.10 平均快 25%。Faster CPython 項(xiàng)目是一個(gè)正在進(jìn)行的項(xiàng)目,已經(jīng)有幾個(gè)優(yōu)化計(jì)劃在 2023 年 10 月與 Python 3.12 一起發(fā)布。你可以在 GitHub 上關(guān)注該項(xiàng)目。Python 3.12 目標(biāo):還可以更快!
 
  項(xiàng)目地址:https://github.com/faster-cpython/ideas
 
  更好的異步任務(wù)語法
 
  Python 中對異步編程的支持已經(jīng)發(fā)展了很長時(shí)間。Python 2 時(shí)代添加了生成器,asyncio 庫最初是在 Python 3.4 中添加的,而 async 和 await 關(guān)鍵字是在 Python 3.5 中添加的。在 Python 3.11 中,你可以使用任務(wù)組(task groups),它為運(yùn)行和監(jiān)視異步任務(wù)提供了更簡潔的語法。
 
  改進(jìn)的類型變量
 
  Python 是一種動態(tài)類型語言,但它通過可選的類型提示支持靜態(tài)類型。Python 靜態(tài)類型系統(tǒng)的基礎(chǔ)在 2015 年的 PEP 484 中定義。自 Python 3.5 以來,每個(gè) Python 版本都引入了幾個(gè)與類型相關(guān)的新提案。
 
  Python 3.11 發(fā)布了 5 個(gè)與類型相關(guān)的 PEP,創(chuàng)下新高:
 
  PEP 646: 可變泛型
 
  PEP 655: 根據(jù)需要或可能丟失的情況標(biāo)記單個(gè) TypedDict 項(xiàng)
 
  PEP 673: Self 類型
 
  PEP 675: 任意文字字符串類型
 
  PEP 681: 數(shù)據(jù)類轉(zhuǎn)換
 
  支持 TOML 配置解析
 
  TOML 是 Tom's Obvious Minimal Language 的縮寫。這是一種在過去十年中流行起來的配置文件格式。在為包和項(xiàng)目指定元數(shù)據(jù)時(shí),Python 社區(qū)已將 TOML 作為首選格式。
 
  雖然 TOML 已被使用多年,但 Python 并沒有內(nèi)置的 TOML 支持。當(dāng) tomllib 添加到標(biāo)準(zhǔn)庫時(shí),Python 3.11 中的情況發(fā)生了變化。這個(gè)新模塊建立在 toml 第三方庫之上,允許解析 TOML 文件。
 
  以下是名為 units.toml 的 TOML 文件示例:
 
  
 
  其他功能
 
  除了以上主要更新和改進(jìn)之外,Python 3.11 還有更多值得探索的功能,比如更快的程序啟動速度、對異常的更多改變以及對字符串格式的小幅改進(jìn)。
 
  更快的程序啟動速度
 
  Faster CPython 項(xiàng)目的一大成果是實(shí)現(xiàn)了更快的啟動時(shí)間。當(dāng)你運(yùn)行 Python 腳本時(shí),解釋器初始化需要一些操作。這就導(dǎo)致即便是最簡單的程序也需要幾毫秒才能運(yùn)行。
 
  
 
  在很多情況下,與運(yùn)行代碼所需時(shí)間相比,啟動程序需要的時(shí)間可以忽略不計(jì)。但是在運(yùn)行時(shí)間較短的腳本中,如典型的命令行應(yīng)用程序,啟動時(shí)間可能會顯著影響程序性能。比如考慮如下腳本,它受到了經(jīng)典 cowsay 程序的啟發(fā)。

  
  在 snakesay.py 中,你從命令行讀取一條消息,然后將這條消息打印在帶有一條可愛蛇的對話氣泡中。你可以讓蛇說任何話。這是命令行應(yīng)用程序的基本示例,它運(yùn)行得很快,但仍需要幾毫秒。這一開銷的很大部分發(fā)生在 Python 導(dǎo)入模塊時(shí)。

  
  你可以使用 - X importtime 選項(xiàng)來顯示導(dǎo)入模塊所用的時(shí)間。表中的數(shù)字為微秒為單位,最后一列是模塊名稱的格式。

  
  該示例分別運(yùn)行在 Python 3.11 和 3.10 上,結(jié)果如下圖所示,Python 3.11 的導(dǎo)入速度更快,有助于 Python 程序更快地啟動。
 
  
 
  零成本異常
 
  異常的內(nèi)部表示在 Python 3.11 中有所不同。異常對象更輕量級,并且異常處理發(fā)生了變化。因此只要不觸發(fā) except 字句,try … except 塊中的開銷就越小。
 
  所謂的零成本異常受到了 C++ 和 Java 等其他語言的啟發(fā)。當(dāng)你的源代碼被編譯為字節(jié)碼時(shí),編譯器創(chuàng)建跳轉(zhuǎn)表,由此來實(shí)現(xiàn)零成本異常。如果引發(fā)異常,查詢這些跳轉(zhuǎn)表。如果沒有異常,則 try 塊中的代碼沒有運(yùn)行時(shí)開銷。
 
  異常組
 
  此前,你了解到了任務(wù)組以及它們?nèi)绾瓮瑫r(shí)處理多個(gè)錯(cuò)誤。這都要?dú)w功于一個(gè)被稱為異常組的新功能。
 
  我們可以這樣考慮異常組,它們是包裝了其他幾種常規(guī)異常的常規(guī)異常。雖然異常組在很多方面表現(xiàn)得像常規(guī)異常,但它們也支持特殊語法,幫助你有效地處理每個(gè)包裝異常。如下所示,你可以通過給出一個(gè)描述并列出包裝的異常來創(chuàng)建一個(gè)異常組。
 
  
 
  異常 Notes
 
  常規(guī)異常具有添加任意 notes 的擴(kuò)展能力。你可以使用. add_note() 向任何異常添加一個(gè) note,并通過檢查.__notes__屬性來查看現(xiàn)有 notes。

  
  負(fù)零格式化
 
  使用浮點(diǎn)數(shù)進(jìn)行計(jì)算時(shí)可能會遇到一個(gè)奇怪概念——負(fù)零。你可以觀察到負(fù)零和 regular zero 在 REPL 中呈現(xiàn)不同,如下所示。

  
  更多關(guān)于 Python 3.11 的更新細(xì)節(jié)請參閱原文檔。
 
  原文:https://realpython.com/python311-new-features
不卡一区二区三区四区_乱中年女人伦av一区二区_美洲天堂一区二卡三卡四卡视频 _国产一区在线精品_91精品国产品国语在线不卡_99在线精品视频_99这里都是精品_国产99久久精品_99re成人在线_亚洲二区在线视频_久久先锋资源网_国产69精品久久久久毛片_亚洲一区二区三区视频在线_91小视频免费观看_欧美制服丝袜第一页_欧美日韩视频在线一区二区
欧美中文字幕亚洲一区二区va在线 | 国产专区欧美精品| 国严精品久久久久久亚洲影视| 欧美亚洲图片小说| 亚洲欧洲中文日韩久久av乱码| 91麻豆免费看片| 中文字幕精品一区二区三区精品| 一本一本大道香蕉久在线精品| 国产99久久久精品| 久久精品噜噜噜成人88aⅴ| 中文字幕av不卡| 亚洲一区二区av电影| 日本高清久久一区二区三区| 亚洲欧美中日韩| 久久99精品久久久久久秒播放器| 精品国产乱码久久| 国产精品进线69影院| 久久久精品2019中文字幕之3| 91久久精品www人人做人人爽| 国产精品视频九色porn| 日本一区二区三区免费观看| 亚洲午夜精品在线| 欧美综合视频在线观看| 91国产丝袜在线放| 国模无码大尺度一区二区三区| 亚洲国产中文字幕| 国产精品电影一区二区三区| 亚洲第一狼人社区| 亚洲成人一区在线| ●精品国产综合乱码久久久久| 日韩一级二级三级精品视频| 久久艳妇乳肉豪妇荡乳av| 日日夜夜精品视频天天综合网| 国产精品女主播在线观看| 欧美性大战xxxxx久久久| 欧美福利精品| 亚洲永久激情精品| xfplay精品久久| 日韩一区欧美二区| 91在线云播放| 麻豆亚洲一区| 日本一区二区三区四区在线观看| 欧美日韩一区综合| 7777精品久久久大香线蕉| 日韩免费成人网| 亚洲激情校园春色| 国产一区精品视频| 日韩欧美区一区二| 久久99精品视频| 亚洲色图自拍| 国产精品五月天| 91亚洲资源网| 欧美巨大另类极品videosbest| 亚洲精品日日夜夜| 国产精品免费在线| 3atv在线一区二区三区| 亚洲成av人片在线观看| 国产在线观看一区二区| 神马影院我不卡午夜| 国产一区二区三区免费在线观看 | 色综合666| 国产乱国产乱300精品| 国产精品三级av| 欧美性一二三区| 蜜桃视频在线观看成人| jvid福利写真一区二区三区| 日韩一区二区三区在线| 99国内精品久久| 中文字幕一区在线观看| 久久青青草原一区二区| 亚洲另类在线一区| 色婷婷综合久久久久中文一区二区| 亚洲午夜日本在线观看| 色婷婷久久久久swag精品| 国产精品一线二线三线精华| 2021国产精品久久精品| 久久精品成人一区二区三区蜜臀| 无码av中文一区二区三区桃花岛| 欧洲亚洲精品在线| 国产69精品久久久久9999apgf | 亚洲自拍偷拍二区| 国产91对白在线观看九色| 欧美韩日一区二区三区| 亚洲精品乱码久久久久久蜜桃91| 国产一区二区三区黄视频 | 亚洲一区二区欧美| 日韩亚洲欧美综合| 精品国产乱码久久久久久88av| 亚洲h在线观看| 中文字幕乱码日本亚洲一区二区 | 91伊人久久大香线蕉| 一区二区三区日本| 日韩欧美一区二区免费| 日韩中文字幕一区二区| 91在线视频官网| 国产一区二区在线电影| 亚洲福利电影网| 国产精品无遮挡| 3751色影院一区二区三区| 亚洲免费精品视频| 美女视频久久| 国产成人成网站在线播放青青| 九九国产精品视频| 日韩中文字幕一区二区三区| 亚洲私人黄色宅男| 欧美激情资源网| 26uuu欧美| 久久久久免费观看| 欧美一级一区二区| 日韩一区二区视频在线观看| 欧美日韩精品是欧美日韩精品| 亚洲人成网站在线观看播放 | 99国产精品久久久久久久久久| 日韩电影在线观看网站| 亚洲一区自拍偷拍| 亚洲午夜一区二区三区| 亚洲国产一区二区视频| 亚洲午夜免费视频| 天天av天天翘天天综合网色鬼国产| 亚洲欧美电影一区二区| 亚洲美女视频一区| 日韩黄色片在线观看| 久久精品久久精品| 风间由美中文字幕在线看视频国产欧美| 韩国三级中文字幕hd久久精品| 美国一区二区三区在线播放| 国产精品一区二区果冻传媒| 9久草视频在线视频精品| 国产乱子伦精品| 亚洲一区二区三区在线观看视频| 一本久久综合亚洲鲁鲁五月天| 在线观看国产91| 欧美成人三级电影在线| 国产精品白丝在线| 蜜臀99久久精品久久久久久软件| 国产一区二三区| 国产日本一区二区三区| 在线国产99| 国产偷国产偷精品高清尤物| 亚洲黄色性网站| 成人午夜视频在线观看| 日本一区二区视频| 久久女同精品一区二区| 亚洲精品ww久久久久久p站 | 亚洲自拍偷拍九九九| 久久99精品国产91久久来源| 99久久久久久99| 亚洲视频免费看| 国产精品亲子伦对白| 日韩成人午夜精品| 国产在线一区二区三区四区| 欧美综合久久久| 一区二区免费看| 国产麻豆乱码精品一区二区三区| 欧美性一区二区| 午夜精品福利一区二区三区av | 麻豆国产精品官网| 动漫3d精品一区二区三区 | 欧美美女bb生活片| 三级不卡在线观看| 国产精品嫩草在线观看| 欧美大片在线观看一区二区| 天堂成人免费av电影一区| 久久大片网站| 国产精品无人区| av一二三不卡影片| 日韩欧美色综合| 国产一区亚洲一区| 欧美综合亚洲图片综合区| 亚洲成a人v欧美综合天堂下载| 久久国产一区二区| 国产欧美视频在线观看| 成人深夜在线观看| 88在线观看91蜜桃国自产| 蜜桃精品在线观看| 色94色欧美sute亚洲线路二| 亚洲国产精品一区二区久久| 免费av一区二区三区| 国产精品久久夜| 精品高清视频| 亚洲已满18点击进入久久| 亚洲图片都市激情| 男人的j进女人的j一区| 日本精品裸体写真集在线观看 | 国产日韩成人精品| 鲁丝片一区二区三区| 一区二区三区在线观看网站| 在线观看一区欧美| 国内精品国产成人| 国产亚洲精品福利| 国严精品久久久久久亚洲影视 | 国产成人午夜视频| 日韩精品一区在线观看| 国产在线视频欧美一区二区三区| 亚洲色图都市小说| 欧美美女一区二区在线观看| 99久久自偷自偷国产精品不卡| 亚洲欧洲另类国产综合| 欧美性三三影院| 国产亚洲一区二区三区在线播放|