日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

【Python】利用Conda尝鲜Python 3.10

發布時間:2025/3/12 python 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Python】利用Conda尝鲜Python 3.10 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 簡介

就在幾天前,Python3.10的第一個正式版本3.10.0發布,之前我們只是從其各個測試版本中捕風捉影地知曉了一些可能加入的新特性,而在正式版本中,我們得以一睹其正式加入的諸多新特性。

本文我就將帶大家學習如何通過conda快速安裝3.10正式版本的Python,并體驗其重要的一些新特性。

2 Python 3.10正式版本重要特性一覽

如果你已經安裝了conda,那么直接通過conda-forge的channel,只需要下面這一行命令即可創建新的Python3.10正式版本虛擬環境:

conda?create?-n?py310?python=3.10?-c?conda-forge?-y

完成安裝之后,激活環境進入Python的shell,可以看到版本為3.10.0,離譜的是我在使用pycharm設置環境后,嶄新的3.10.0環境竟然被識別為3.1(真是醉了)😂,于是我換成用vscode進行演示:

下面就讓我們來體驗其重要的一些新特性吧~

2.1 新的結構模式匹配語法

上一次為Python引入新的語法和關鍵字還是async,而在這次的新版本中,引入了新的關鍵字match與case,從而幫助我們得以在Python中使用到其他語言中類似switch的語法,使用方式如下面例子所示,對于match其后聲明的值,后續的每個case會驗證是否與其對應值相等,最后的case _中的_代表Irrefutable Pattern,相當于通配符,但是只允許置于「最后」一個case中:

import?sysmatch?sys.argv[1]:case?'1':print(1)case?'2':print(2)case?'3':print(3)case?_:print('其他輸入')

match-case語法配合上通配符_,當輸入容器類型的數據結構時,可以進行一些更加自由的判斷:

import?sys#?1?新的結構模式匹配語法 match?sys.argv[1:]:case?['1',?'2',?'3']:print('分支1')case?['4',?_,?'6']:print('分支2')case?['7',?'8',?_]:print('分支3')case?_:print('超出已知選項!')

更有趣的是,我們還可以使用任意自定義變量名,在match-case的作用域內輔助通配匹配,從而實現類似下面例子的效果:

import?sys#?1?新的結構模式匹配語法 match?(int(sys.argv[1]),?int(sys.argv[2])):case?(0,?0):print("原點")case?(0,?y):print(f"Y={y}")case?(x,?0):print(f"X={x}")case?(x,?y):print(f"X={x},?Y={y}")case?_:print('輸入非法!')

類似的,針對對象的屬性值,也可以進行類似的通配判斷,更多用法你可以參考下面的例子進行拓展:

import?sysclass?Demo:x:?inty:?intdemo?=?Demo() demo.x?=?int(sys.argv[1]) demo.y?=?int(sys.argv[2])#?1?新的結構模式匹配語法 match?demo:case?Demo(x=0,?y=0):print("原點")case?Demo(x=0,?y=y):print(f"Y={y}")case?Demo(x=x,?y=0):print(f"X={x}")case?Demo(x=x,?y=y):print(f"X={x},?Y={y}")case?_:print('輸入非法!')

2.2 更清晰的錯誤提示

在Python3.10中,針對常見的各種錯誤類型,執行代碼后的錯誤提示更加明確,譬如下面是3.9與3.10針對同一種錯誤的錯誤輸出信息對比:

2.3 支持括號包裹的多上下文管理器

這個特性其實在3.9中就開始出現,在3.10中進一步得到完善,使得下面的用法合法(與3.7進行對比):

2.4 更方便的聯合類型提示設置

在之前的版本中,當我們用到多類型提示時,得這樣寫:

from?typing?import?Union,?stringdef?some_funcion(flexible_parameter:?Union[int,?string])?->?Union[int,?string]:return?flexible_parameter

而在3.10中,多類型聯合不再必須用到Union,使用|連接即可,非常的方便:

from?typing?import?stringdef?some_funcion(flexible_parameter:?int?|?string)?->?int?|?string:return?flexible_parameter

2.5 更加準確的錯誤代碼行位置提示

在Python3.10中,代碼的錯誤提示,對于具體錯誤行位置的提示更加準確了:


以上就是本文的全部內容,歡迎在評論區與我進行討論。

往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習及深度學習筆記等資料打印機器學習在線手冊深度學習筆記專輯《統計學習方法》的代碼復現專輯 AI基礎下載黃海廣老師《機器學習課程》視頻課黃海廣老師《機器學習課程》711頁完整版課件

本站qq群554839127,加入微信群請掃碼:

總結

以上是生活随笔為你收集整理的【Python】利用Conda尝鲜Python 3.10的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。