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

Python的10個神奇的技巧

開發 前端
盡管從表面上看,Python似乎是任何人都可以學習的一種簡單語言,但確實如此,許多人可能驚訝地知道一個人可以熟練掌握該語言。 Python是其中的一門很容易學習的東西,但可能很難掌握。

 Python的10個神奇的技巧

盡管從表面上看,Python似乎是任何人都可以學習的一種簡單語言,但確實如此,許多人可能驚訝地知道一個人可以熟練掌握該語言。 Python是其中的一門很容易學習的東西,但可能很難掌握。 在Python中,通常有多種處理方法,但是很容易做錯事情,或者重新發明標準庫并浪費時間,這僅僅是因為您不知道模塊的存在。

不幸的是,Python標準庫是一個巨大的野獸,此外,其生態系統絕對是巨大的。 盡管可能有200萬千兆字節的Python模塊,但是您可以使用通常與Python中的科學計算相關的標準庫和軟件包學習一些有用的技巧。

№1:反向串

盡管看似基本,但使用char循環反轉字符串可能非常繁瑣且令人討厭。 幸運的是,Python包含一個簡單的內置操作來精確地執行此任務。 為此,我們只需訪問字符串上的索引::-1。

 

  1. a = "!dlrow olleH" 
  2.  
  3. backward = a[::-1] 

 

 

Python的10個神奇的技巧

 

№2:變暗作為變量

在大多數語言中,為了將數組放入一組變量中,我們需要迭代遍歷值或按位置訪問暗點,如下所示:

 

  1. firstdim = array[1] 

但是,在Python中,有一種更酷的方法。 為了將值列表更改為變量,我們可以簡單地將變量名設置為等于數組,且數組長度相同:

 

  1. array = [5, 10, 15, 20] 
  2.  
  3. five, ten, fift, twent = array 

 

 

Python的10個神奇的技巧

 

№3:Itertools

如果您打算花任何時間在Python上花費任何時間,那么您肯定會想要熟悉itertools。 Itertools是標準庫中的一個模塊,可讓您不斷解決迭代問題。 它不僅使編寫復雜的循環變得容易得多,而且使您的代碼更快,更簡潔。 這只是Itertools用法的一個示例,但有數百個:

 

  1. c = [[1, 2], [3, 4], [5, 6]] 
  2.  
  3. # Let's convert this matrix to a 1 dimensional list.import itertools as 
  4.  
  5. itnewlist = list(it.chain.from_iterable(c)) 

 

№4:智能開箱

迭代地解壓縮值可能會非常耗時且費力。 幸運的是,Python有幾種很酷的方式可以解壓縮列表! 一個例子是*,它將填充未分配的值并將它們添加到變量名下的新列表中。

 

  1. a, *b, c = [1, 2, 3, 4, 5] 

 

Python的10個神奇的技巧

 

№5:枚舉

如果您不了解枚舉,則可能應該熟悉它。 枚舉將允許您獲取列表中某些值的索引。 當使用數組而不是數據框架時,這在數據科學中特別有用。

  1. for i,w in enumerate(array): 
  2.  
  3. print(i,w) 

 

Python的10個神奇的技巧

 

№6:名字切片

在Python中拆分列表非常簡單! 可以使用各種各樣的出色工具,但是肯定有價值的一個功能是可以命名列表的片段。 這對于Python中的線性代數特別有用。

  1. a = [0, 1, 2, 3, 4, 5] 
  2.  
  3. LASTTHREE = slice(-3, None) 
  4.  
  5. slice(-3, None, None) 
  6.  
  7. print(a[LASTTHREE]) 

 

 

Python的10個神奇的技巧

 

№7:組相鄰列表

當然可以在for循環中相當容易地對相鄰循環進行分組,特別是通過使用zip(),但這當然不是最好的處理方式。 為了使事情變得更加輕松和快捷,我們可以使用zip編寫一個lambda表達式,該表達式將對我們的相鄰列表進行分組,如下所示:

 

  1. a = [1, 2, 3, 4, 5, 6] 
  2.  
  3. group_adjacent = lambda a, k: zip(*([iter(a)] * k)) 
  4.  
  5. group_adjacent(a, 3) 
  6.  
  7. [(1, 2, 3), (4, 5, 6)] 
  8.  
  9. group_adjacent(a, 2) 
  10.  
  11. [(1, 2), (3, 4), (5, 6)] 
  12.  
  13. group_adjacent(a, 1) 

 

№8:生成器的next()迭代

在編程的大多數正常情況下,我們可以使用一個計數器來訪問一個索引并獲取我們的倉位號,該計數器將只是添加到以下值的值:

 

  1. array1 = [5, 10, 15, 20] 
  2.  
  3. array2 = (x ** 2 for x in range(10)) 
  4.  
  5. counter = 0for i in array1: 
  6.  
  7. # This code wouldn't work because 'i' is not in array2. 
  8.  
  9. # i = array2[i] 
  10.  
  11. i = array2[counter] 
  12.  
  13. # ^^^ This code would because we are accessing the position of i 

 

但是,我們可以使用next()代替它。 Next使用一個迭代器,該迭代器將當前位置存儲在內存中,并在后臺遍歷列表。

 

  1. g = (x ** 2 for x in range(10)) 
  2.  
  3. print(next(g)) 
  4.  
  5. print(next(g)) 

 

 

Python的10個神奇的技巧

 

№9:Counter

標準庫中另一個很棒的模塊是集合,我今天想向您介紹的是集合中的計數器。 使用Counter,我們可以輕松獲得列表的計數。 這對于獲取數據中的值總數,獲取數據的空計數以及查看數據的唯一值很有用。 我知道你在想什么

"為什么不只使用Pandas?"

這當然是正確的觀點。 但是,使用Pandas進行自動化無疑會更加困難,并且只是在部署算法時需要將其添加到虛擬環境中的另一個依賴項。 此外,Python中的計數器類型具有Pandas系列所沒有的許多功能,這使其在某些情況下更加有用。

 

  1. A = collections.Counter([1, 1, 2, 2, 3, 3, 3, 3, 4, 5, 6, 7]) 
  2.  
  3.  
  4. Counter({3: 4, 1: 2, 2: 2, 4: 1, 5: 1, 6: 1, 7: 1}) 
  5.  
  6. A.most_common(1) 
  7.  
  8. [(3, 4)] 
  9.  
  10. A.most_common(3) 
  11.  
  12. [(3, 4), (1, 2), (2, 2)] 

 

№10:出隊

收集模塊中另一個很棒的事情是出隊。 看看我們可以用這種類型做的所有整潔的事情!

 

  1. import collections 
  2.  
  3. Q = collections.deque() 
  4.  
  5. Q.append(1) 
  6.  
  7. Q.appendleft(2) 
  8.  
  9. Q.extend([3, 4]) 
  10.  
  11. Q.extendleft([5, 6]) 
  12.  
  13. Q.pop() 
  14.  
  15. Q.popleft() 
  16.  
  17. Q.rotate(3) 
  18.  
  19. Q.rotate(-3) 
  20.  
  21. print(Q) 

 

 

Python的10個神奇的技巧

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2020-06-23 07:50:13

Python開發技術

2020-01-15 08:00:00

Python編程語言代碼

2019-02-25 15:15:44

Windows 10Windows技巧

2011-07-07 10:21:56

2018-11-28 08:15:09

2014-07-29 13:55:10

程序員代碼

2021-03-15 08:13:19

JavaScript開發代碼

2025-06-04 08:05:00

Peewee?數據庫開發

2025-06-09 10:15:00

FastAPIPython

2025-05-29 10:00:00

ZODBPython數據庫

2025-05-27 08:00:00

Pythonemoji

2025-06-05 08:10:00

PyneconePythonWeb 應用

2025-06-04 10:05:00

Gooey開源Python

2025-06-09 07:25:00

filelock數據庫

2025-06-05 10:00:00

GensimPython

2025-06-10 08:00:00

Pygalpython

2020-08-21 08:52:09

Python數據分析工具

2020-11-09 08:06:37

HTML技巧上傳

2021-04-20 16:56:01

物聯網安全設備

2009-04-16 16:57:58

DotNetNuke優化網站開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品久久久久婷婷二区次 | av一区二区三区四区 | 91久久精品一区二区二区 | 日韩视频精品在线 | 在线观看国产wwwa级羞羞视频 | 国产精品久久久久久久久久久久午夜片 | 日韩三区在线观看 | 精品久久久久久亚洲精品 | 岛国av免费在线观看 | 亚洲理论在线观看电影 | 亚洲高清av| 久久专区 | 久久精品国产亚洲一区二区三区 | 成人在线 | 精品欧美一区免费观看α√ | 久久精品国产一区 | 日韩人体视频 | 午夜免费看 | 国产伦精品一区二区 | 欧美精品一二三 | 欧美日韩一区二区三区视频 | 99热欧美 | 日日摸日日碰夜夜爽亚洲精品蜜乳 | 夜夜爽99久久国产综合精品女不卡 | 欧美国产激情二区三区 | 亚洲国产二区 | 欧美涩| 国产区高清 | 天天操欧美 | 国产在线精品一区二区三区 | 91色啪| 欧美性生活视频 | 91社区在线高清 | 在线成人免费av | 超碰97av| 亚洲一区二区精品视频 | 精品视频一区二区 | 日日干夜夜操 | 国产日本精品视频 | 亚洲国产成人精品在线 | 国产不卡一区在线观看 |