成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

新手必看:Python 3.8六大新功能

開發 后端
近期,Python 3.8已經發布。 不過別擔心,小芯已經為你總結好了Python 3.8中每個新手都應該掌握的6大新功能。

IT業日新月異,落后的Python 2將在2020年逐漸被淘汰。

2019年,隨著數據科學的興起,Python成為了最熱門的程序語言。 盡管如此,面對浩如煙海的知識,應接不暇也是正常的。語法不斷變化,每次Python更新,都會添加許多新的表達。有很多功能小芯只恨自己知道得太晚了。 如果讀者也感同身受,這里有一個壞消息:近期,Python 3.8已經發布。 不過別擔心,小芯已經為你總結好了Python 3.8中每個新手都應該掌握的6大新功能。

[[313648]]

1. 新模塊:讀取元數據歷

使用新的importlib.metadata模塊可以讀取第三方包的元數據。可以在腳本包中獲取版本號。

2. 字典反轉:排序

現在,字典可以用resersed( )在反轉插入排序中實現迭代了。

3. Continue – finally

由于Python的實現問題,以前在Finally子句中添加continue語句是不合法的。現在這一問題已不復存在。

  1. for i inrange(2): 
  2.     try: 
  3.         print(i) 
  4.     finally: 
  5.         print('A sentence.') 
  6.         continue 
  7.         print('This never shows.') 
  8. # Python <= 3.7 
  9. >>SyntaxError: 'continue'not supported inside 'finally' clause 
  10. # Python 3.8 
  11. >>
  12.    A sentence. 
  13.    1 
  14.    A sentence. 

4. 指示參數類型:讓代碼更強大

Python函數只接受兩種參數。

  • 位置參數:根據函數定義的參數位置來傳遞參數。
  • 關鍵字參數:使用關鍵字來指定參數。

在下例中,參數a和參數b的值可由位置參數或關鍵字參數確定,非常靈活。

  1. def my_func(a, b=1): 
  2.     return a+bmy_func(5,2)     # both positional arguments 
  3. my_func(a=5,b=2) # both keyword arguments 

新版本的Python用語法/和*作區分,提供了指定接受位置參數或關鍵字參數的方法。注意:語法*并不是在Python 3.8中才出現。

在下面的例子中,開頭的兩個參數a和b只接受位置參數,中間的c和d可接受位置參數或關鍵字參數,最后的e和f只接受關鍵字參數。

  1. defmy_func(a, b, /, c, d, *, e, f): 
  2.     return a+b+c+d+e+f 
  3. my_func(1,2,3,4,5,6)          # invalid  as e and f are keyword-only 
  4. my_func(a=1,b=2,3,4,e=5,f=6) # invalid as a and b are position-only 
  5. my_func(1,2,c=3,4,e=5,f=6)    # returns  21 
  6. my_unc(1,2,c=3,d=4,e=5,f=6)  # returns 21 

為什么要犧牲靈活性呢?如果參數名稱隨意且無用,就應該排除關鍵字參數。如果預計函數中的參數名可能會發生變化,指定參數類型能避免代碼崩潰,也能讓代碼更加強大。

5. 賦值表達式:提升代碼可讀性

賦值表達式,又稱海象運算符,是以:=為語法形式的新運算符,它能把較大表達式中的某部分賦值給變量。這無疑是Python 3.8中討論最多的新功能了。

來看個例子: 賦值表達式b := a**2 將a的平方,也就是36,賦值給b,然后檢查b的值是否大于0。

  1. a =6 
  2. # The following statement 
  3. # assigns the value a ** 2 to  variable b, 
  4. # and then check if b > 0 is  true 
  5. if (b :a **2) >0: 
  6.     print(f'The  square of {a} is {b}.') # The square of 6 is 36. 

有時賦值表達式能讓代碼更加簡潔可讀。但是,請注意不要濫用賦值表達式,因為在某些情況下它會讓代碼更加難懂。

  1. # DON'T DO THIS! 
  2. a = 5 
  3. d = [b :a+1, a :b-1, a :a*2] 

其他(老)程序語言中也有賦值表達式,希望改用Python的程序員們能(多)用這一新功能。在賦值表達式泛濫之前趕快掌握它吧。

6. F字符串2.0: 調試(debug)的利器

Python f字符串改變了游戲規則。F字符串是格式化字符串的語法,簡潔且易讀。利用語法f'{expr}',在引號前加上f,將表達式用大括號括住,就能夠將表達式插入字符串。

Python更新之后,等于號“=”能夠在f字符串f'{expr=}'語法中作為格式限定符使用。輸出的字符串為變量名=變量值,如下所示:

  1. # DON'T DO THIS! 
  2. a = 5 
  3. d = [b :a+1, a :b-1, a :a*2] 

出于編制文件或調試 (Debug) 的需要,常需要指明變量值。F字符串使得調試(debug)易如反掌。

當然,在投身Python 3.8編程之前,你需要掌握Python基本功能(必不可少)。

這就是Python的6大新功能,每個Python新手都能從中獲益。

責任編輯:趙寧寧 來源: 讀芯術
相關推薦

2022-09-15 00:00:52

iOS功能蘋果

2020-12-04 18:39:59

安卓系統應用Google Play

2014-10-30 14:42:57

Android 5.0Google

2011-05-05 16:13:37

Palm OS 4.0Palm OS

2010-05-18 15:54:25

IIS 7.0

2020-11-02 00:17:52

vSphere 7.0Kubernetes容器管理

2011-08-03 09:40:29

云存儲存儲管理

2015-04-27 14:30:10

2011-08-10 10:41:19

虛擬化VMware ESXi

2011-04-07 14:12:04

Firefox 5.0

2013-04-15 10:44:24

2010-01-13 09:11:04

Visual Stud

2019-10-25 21:02:33

云計算行業科技

2020-05-07 14:34:14

GitHub新功能開發者

2013-02-28 20:24:57

微軟SharePoin

2013-02-28 20:27:46

Exchange微軟

2013-02-28 20:22:06

Lync微軟

2024-08-12 16:21:18

2012-02-20 10:11:53

PhoneGap

2017-02-20 11:13:53

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久综合伊人一区二区三 | www.4hu影院 | 中文字幕加勒比 | 欧美一a | 欧美激情网站 | av在线播放网站 | 欧美黄色大片在线观看 | 成人h视频在线 | 天天夜夜人人 | 手机三级电影 | 久久久久亚洲 | 精品电影 | 欧美综合一区二区 | 久久久性 | 欧美中文字幕一区二区三区 | 热久久免费视频 | 九九久久精品视频 | 亚洲视频在线播放 | 日韩成人在线网站 | 拍真实国产伦偷精品 | 日韩精品在线看 | 亚洲欧美一区二区三区1000 | 国产精品久久久久久久久久久新郎 | 国产婷婷精品 | 国产丝袜一区二区三区免费视频 | 99国内精品 | 国产人成精品一区二区三 | 一级毛片免费视频观看 | 精产国产伦理一二三区 | 欧美美女二区 | 韩日一区二区三区 | 午夜小影院 | 91手机精品视频 | 亚洲精品高清视频在线观看 | 国产激情视频在线观看 | 成人在线一区二区 | 国产精品视频一区二区三区不卡 | 久久精品 | 日韩精彩视频 | 99热首页 | 欧美精品一区二区在线观看 |