分享 Python 3.6 中常用的幾個新特性
Python 3.6 釋出已經有段時間了,不少新特性應該被很多開發者用在了日常的開發中,這篇文章主要介紹下自己在開發中常用到的幾個。
增加數字可讀性
在定義數字的時候,有一個語法特性可以讓數字可讀性增強,即你在數字之間可以按照自己的喜好新增一個下滑線,就像這樣
在這裡還是要推薦下我自己建的Python開發學習群:628979297,群裡都是學Python開發的,如果你正在學習Python ,小編歡迎你加入,大家都是軟體開發黨,不定期分享乾貨(只有Python軟體開發相關的),包括我自己整理的一份2018最新的Python進階資料和高階開發教程,歡迎進階中和進想深入Python的小夥伴
這樣書寫方式與之前的並無區別
語義其實是一樣的,也就是定義了一個值為 100000 的變數。
當然,對於十六進位制與二進位制也是支援的
這個小修改也恰好體現了 Python 之禪的 Readability counts (可讀性很重要)這一點吧。
詳情請看 PEP 515 。
新的格式化字串的方法
Python 3.6 中新增了另一種格式化字串的方法,這個方法允許你在字串中直接嵌入表示式。下面有兩個例子,可以看看感受一下
另外,和之前的 str.format() 格式化字串的方法類似,也可以用特定的格式說明符說明格式化的方式。比如我們想用十六進位制的形式格式化一個十進位制的數,可以這樣
相比於之前的 '...' % (val1[, val2, ...]) 以及 str.format() ,這種方式不管是書寫上還是可讀性上,感覺都方便了不少,所以如果你在 Python 3.6 中做開發的話,我十分推薦這種方式。
詳情請看 PEP 498 。
變數的型別註解
從 Python 3.5 開始,你可以給函式新增型別註解
在 Python 3.6 中,你也可以給獨立的變數作型別註解,就像給函式中形式引數作註解差不多
需要注意的是,Python 的型別註解並不會在執行中執行相應的檢查
也就是說,如果你定義了一個整形的變數,而你卻賦值給它一個字串,Python 並不會報錯,對於函式的引數以及返回值的註解也是這樣的。個人覺得這更像是程式設計時的一個輔助措施。
如果你打算嚴格執行註解的要求,你可以使用 python/mypy 工具進行檢查。(使用方法請看 https://github.com/python/mypy )
詳情請看 PEP 526 。
其它值得注意的變化
新增加的模組中有一個叫做 secrets ,可以較為方便的提供密碼學安全的隨機串,我之前的一篇文章《玩轉 Python 中的隨機數》的後面部分對這個模組進行了一些簡單的說明,有興趣的朋友可以去看一下。
Python 3.6 中不僅僅是新特性的新增,也有效能的提升,比如字典型別相比之前更快,並且節省了 20% 到 25% 的空間。
當然,這個版本帶來的變化肯定不止上面這麼一些,我例舉出來的都是一些常用的點。如果想看全面的說明,可以去官網( https://docs.python.org/3.6/whatsnew/3.6.html )看看。
上面的 PEP 515 、PEP 498 、PEP 526 的具體資訊都可以在上面的地址中看到。
相關文章
- Python3.6中那些很酷的特性Python
- Python培訓分享:Python新版本中的6個新特性Python
- 你應該知道的Python3.6、3.7、3.8新特性Python
- .NET 9 的幾個新特性,新穎嗎?
- ES6中常用的10個新特性講解
- python 的幾個常用的函式Python函式
- Python 3.8與普通程式設計師有關的幾個新特性Python程式設計師
- Oracle 21c新特性預覽與日常管理相關的幾個新特性Oracle
- ConstraintLayout 約束佈局的幾個新特性筆記整理AI筆記
- 這幾個python常用的庫你必須知道!Python
- Python最常用的基礎語句,你知道幾個?Python
- JavaScript ES2019 中的 8 個新特性JavaScript
- Java8常用的新特性總結Java
- Python中常用的模組有哪些?看看你知道幾個!Python
- 軟體測試-各個特性常用特性
- 分享幾個Python小技巧函式裡的4個小花招Python函式
- 幾個特性,快速上手KotlinKotlin
- ES2015+ 常用新特性一口氣看個夠
- Kotlin中的幾個常用函式let with run also applyKotlin函式APP
- git的幾個常用基本操作Git
- 常用的Linux,記住了幾個?Linux
- 常用的Python機器學習庫合集,你用過幾個?Python機器學習
- Python常用的圖形介面程式設計框架,你知道幾個?Python程式設計框架
- Python中Lambda使用要注意的幾個地方Python
- 【學習】分享幾個學習中的小問題
- Spring中11個最常用的擴充套件點,你知道幾個?Spring套件
- Python常用6個技術網站彙總分享!Python網站
- 分享幾個寫 demo 的思路
- 分享幾個實用的方法
- Ubuntu中安裝python3.6踩坑UbuntuPython
- AppDelegate中幾個常用回撥函式的呼叫時機APP函式
- 18個常用的JavaScript片段分享JavaScript
- Nginx的幾個常用配置和技巧Nginx
- Cesium 比較常用的幾個方法
- 《安全測試常用的幾個工具》
- Python教程: 反射及常用的幾種方法Python反射
- Python中常用的幾個內建方法(max()/min()、filter()、map()、sorted、reduce())PythonFilter
- Nearby Service新特性:Wi-Fi分享