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

Python 3.5 帶給我們的方便的矩陣以及其他改進

開發 后端
Python 3.5 在 2015 年首次發布,盡管它已經發布了很長時間,但它引入的許多特性都沒有被充分利用,而且相當酷。下面是其中的三個。

Python 3.5 在 2015 年首次發布,盡管它已經發布了很長時間,但它引入的許多特性都沒有被充分利用,而且相當酷。下面是其中的三個。

[[403082]]

@ 操作符

@ 操作符在 Python 中是獨一無二的,因為在標準庫中沒有任何對象可以實現它!它是為了在有矩陣的數學包中使用而添加的。

矩陣有兩個乘法的概念。元素積是用 * 運算符完成的。但是矩陣組合(也被認為是乘法)需要自己的符號。它是用 @ 完成的。

例如,將一個“八轉”矩陣(將軸旋轉 45 度)與自身合成,就會產生一個四轉矩陣。

  1. import numpy 
  2. hrt2 = 2**0.5 / 2 
  3. eighth_turn = numpy.array([ 
  4.     [hrt2, hrt2], 
  5.     [-hrt2, hrt2] 
  6. ]) 
  7. eighth_turn @ eighth_turn 
  1. array([[ 4.26642159e-17,  1.00000000e+00], 
  2.        [-1.00000000e+00, -4.26642159e-17]]) 

浮點數是不精確的,這比較難以看出。從結果中減去四轉矩陣,將其平方相加,然后取其平方根,這樣就比較容易檢查。

這是新運算符的一個優點:特別是在復雜的公式中,代碼看起來更像基礎數學:

  1. almost_zero = ((eighth_turn @ eighth_turn) - numpy.array([[0, 1], [-1, 0]]))**2 
  2. round(numpy.sum(almost_zero) ** 0.5, 10) 
  1. 0.0 

參數中的多個關鍵詞字典

Python 3.5 使得調用具有多個關鍵字-參數字典的函數成為可能。這意味著多個默認值的源可以與更清晰的代碼”互操作“。

例如,這里有個可笑的關鍵字參數的函數:

  1. def show_status( 
  2.     *, 
  3.     the_good=None
  4.     the_bad=None
  5.     the_ugly=None
  6.     fistful=None
  7.     dollars=None
  8.     more=None 
  9. ): 
  10.     if the_good: 
  11.         print("Good", the_good) 
  12.     if the_bad: 
  13.         print("Bad", the_bad) 
  14.     if the_ugly: 
  15.         print("Ugly", the_ugly) 
  16.     if fistful: 
  17.         print("Fist", fistful) 
  18.     if dollars: 
  19.         print("Dollars", dollars) 
  20.     if more: 
  21.         print("More", more) 

當你在應用中調用這個函數時,有些參數是硬編碼的:

  1. defaults = dict
  2.     the_good="You dig"
  3.     the_bad="I have to have respect"
  4.     the_ugly="Shoot, don't talk"

從配置文件中讀取更多參數:

  1. import json 
  2. others = json.loads(""" 
  3. "fistful": "Get three coffins ready", 
  4. "dollars": "Remember me?", 
  5. "more": "It's a small world" 
  6. """) 

你可以從兩個源一起調用這個函數,而不必構建一個中間字典:

  1. show_status(**defaults, **others) 
  1. Good You dig 
  2. Bad I have to have respect 
  3. Ugly Shoot, don't talk 
  4. Fist Get three coffins ready 
  5. Dollars Remember me? 
  6. More It's a small world 

os.scandir

os.scandir 函數是一種新的方法來遍歷目錄內容。它返回一個生成器,產生關于每個對象的豐富數據。例如,這里有一種打印目錄清單的方法,在目錄的末尾跟著 /:

  1. for entry in os.scandir(".git"): 
  2.     print(entry.name + ("/" if entry.is_dir() else "")) 
  1. refs/ 
  2. HEAD 
  3. logs/ 
  4. index 
  5. branches/ 
  6. config 
  7. objects/ 
  8. description 
  9. COMMIT_EDITMSG 
  10. info/ 
  11. hooks/ 

歡迎來到 2015 年

Python 3.5 在六年前就已經發布了,但是在這個版本中首次出現的一些特性非常酷,而且沒有得到充分利用。如果你還沒使用,那么將他們添加到你的工具箱中。

 

責任編輯:趙寧寧 來源: Linux中國
相關推薦

2015-08-05 17:16:17

電影ip像素游戲像素大戰

2009-06-15 15:29:48

IT服務運維管理摩卡

2009-02-20 14:48:47

IT服務管理ITSM摩卡

2013-03-25 11:28:40

2017-11-28 16:37:19

黑五

2010-01-26 09:20:38

Ubuntu10.04Ubuntu9.10

2010-03-24 11:14:41

TurboLinux系

2009-12-07 09:12:52

2023-01-05 08:52:42

OKR項目管理

2015-08-27 09:19:23

移動后端即服務MBaaSPaaS

2015-09-02 09:55:03

云服務MBaaS移動三層架構

2010-08-12 09:07:25

Solaris 11Oracle

2021-03-08 15:01:29

5G無人機光纖

2011-09-26 16:23:20

桌面虛擬化虛擬化

2013-02-26 10:37:00

大數據云計算

2012-08-24 09:39:31

2015-08-21 10:14:11

2023-04-03 14:32:39

異構計算算力芯片

2016-12-15 14:23:49

Linux

2020-06-10 07:40:36

CPU內核態多線程
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 看片91 | 一区二区日韩 | 久热久热| 91精品国产91久久久久青草 | 日本a级大片 | 欧美精品一区二区三区在线播放 | 日韩视频二区 | 精品一区二区三区日本 | 欧美黄色小视频 | 国产精品日本一区二区在线播放 | 欧美日韩综合一区 | 51ⅴ精品国产91久久久久久 | 国产精品中文字幕在线播放 | 免费在线观看成人av | 亚洲日本欧美 | 中文字幕一区二区三区不卡在线 | 国产在线视频三区 | 在线第一页 | 亚洲国产精品99久久久久久久久 | 成人自拍视频 | 久久九七 | 自拍偷拍第一页 | 视频一区 国产精品 | 国产精品夜间视频香蕉 | 成人国产精品免费观看 | 亚洲精品久久久久国产 | 欧美专区日韩专区 | 日日夜夜操天天干 | 国产成人99久久亚洲综合精品 | 精品无码三级在线观看视频 | 黄色在线免费观看视频网站 | 日韩一区在线播放 | 日韩精品一区二区三区中文在线 | 中文字幕日韩欧美一区二区三区 | 国产精品久久精品 | 国产精品国产精品国产专区不卡 | 男人的天堂一级片 | 91精品国产综合久久久久久丝袜 | 色偷偷人人澡人人爽人人模 | 欧美一区不卡 | 日本不卡一区二区三区在线观看 |