Python3.8 新特性:赋值表达式
生活随笔
收集整理的這篇文章主要介紹了
Python3.8 新特性:赋值表达式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Python3.8 正式版本已經發布,喜歡嘗鮮的同學可以下載下來體驗一下,我并沒有打算升級到最新版本,因為性能上并沒有顯著提升。但還是有必要了解其中的新特性。
賦值表達式的語法是:“ name := expression ”,這個曾經引起很大爭議特性,最終還是加入到了Python3.8。不過它也僅僅只是一個錦上添花的特性。
我們可以通過一個例子來了解它的使用場景。
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:857662006 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' >>> import re>>> data = "hello123world" >>> match = re.search("(\d+)", data) # 3 >>> if match: # 4 ... num = match.group(1) ... else: ... num = None >>> num '123'代碼很簡單,就是一個使用正則表達式提取字符串中數字部分的操作。之前的做法是先將調用 re.search 方法,返回Match對象,然后賦值給變量 match,再判斷 match 對象是否為None來提取其中的數字部分。
在Python3.8中,你可以將第3、4行代碼合并成一行代碼,在 if 語句中,可以給變量賦值,這就是賦值表達式。相比之前的版本,代碼少了一行。
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:857662006 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' >>> if match:=re.search("(\d+)", data): ... num = match.group(1) ... else: ... num = None ... >>> num '123'這樣看起來代碼確實精簡了一點點,但是,這樣的特性對開發者來說,只能說是一個不痛不癢的功能,至少對我來是這樣。
總結
以上是生活随笔為你收集整理的Python3.8 新特性:赋值表达式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 查询文本文件的层次
- 下一篇: Python3.8 新特性:仅位置参数