天天看點

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

大家好,我是程式員G哥,都說拳不離手,曲不離口,學習程式設計其實就跟練武一樣,每個小白成長為大俠都需要經過不斷的磨練,打怪更新,不斷的增長經驗值。而GitHub就是一個大的寶庫,裡面有各種武林秘籍,讓你吸取能量!

今天G哥在逛GitHub的時候,發現了一份非常不錯的學習Python的資源。一共有223個小例子,每個60秒就能看完,一口一個,短小精悍,非常适合學習修煉。

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

作者Jack非常厲害,整理了一共有8個章節,每個章節都有大小,數量不等的小巧的例子,從Python基礎知識,字元串,正則,到進階的生成器,疊代器,難懂的裝飾器,常見的檔案處理,正則使用,到算法的入門,一應俱全。目前已經收獲了3900顆星,我們一起來看一下。

元素都為真

接受一個可疊代對象,如果可疊代對象的所有元素都為真,那麼傳回 

True

,否則傳回

False

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

3 元素至少一個為真 

接受一個可疊代對象,如果可疊代對象裡至少有一個元素為真,那麼傳回

True

,否則傳回

False

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

ascii展示對象

調用對象的 _repr_ 方法,獲得該方法的傳回值,如下例子傳回值為字元串

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

轉為字典 

建立資料字典

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

枚舉對象

傳回一個可以枚舉的對象,該對象的next()方法将傳回一個元組。

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

過濾器

在函數中設定過濾條件,疊代元素,保留傳回值為

True

的元素:

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

動态擷取對象屬性

擷取對象的屬性

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

上面的都是一些簡單的招式,我們再來看一些進階的總結的不錯的招式,看完之後一定讓你功力大漲!

建立屬性的兩種方式

傳回 property 屬性,典型的用法:

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

使用python裝飾器,實作與上完全一樣的效果代碼:

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

聚合疊代器

建立一個聚合了來自每個可疊代對象中的元素的疊代器:

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

nonlocal用于内嵌函數中

關鍵詞

nonlocal

常用于函數嵌套中,聲明變量

i

為非局部變量;如果不聲明,

i+=1

表明

i

為函數

wrapper

内的局部變量,因為在

i+=1

引用(reference)時,i未被聲明,是以會報

unreferenced variable

的錯誤。

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

不用else和if實作電腦

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

這種設計思路非常巧妙,在實際的生産環境中經常會用到,非常簡潔,跟代碼大全裡面的表查詢有異曲同工之妙。

全展開,如何把這樣的嵌套數組展開

例如[[[1,2,3],[4,5]]],這個題目其實也是我曾經面試的一個題目           

如何完全展開成一維的。這個小例子實作的

flatten

是遞歸版,兩個參數分别表示帶展開的數組,輸出數組。

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

groupby單字段分組

天氣記錄:

a = [{'date': '2019-12-15', 'weather': 'cloud'},
 {'date': '2019-12-13', 'weather': 'sunny'},
 {'date': '2019-12-14', 'weather': 'cloud'}]           

按照天氣字段

weather

分組彙總:

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

輸出結果:

cloud
{'date': '2019-12-15', 'weather': 'cloud'}
{'date': '2019-12-14', 'weather': 'cloud'}sunny
{'date': '2019-12-13', 'weather': 'sunny'}           

itemgetter和key函數

注意到

sort

groupby

所用的

key

函數,除了

lambda

寫法外,還有一種簡寫,就是使用

itemgetter

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

結果:

cloud
{'date': '2019-12-15', 'weather': 'cloud'}
{'date': '2019-12-14', 'weather': 'cloud'}sunny
{'date': '2019-12-13', 'weather': 'sunny'}           

統計異常出現次數和時間的裝飾器

寫一個裝飾器,統計某個異常重複出現指定次數時,經曆的時長。

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

 xls批量轉換成xlsx

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

上面的Python技巧真的是令人眼花缭亂,讓我學習興趣大漲!看完之後,趕緊動手撸一遍。光看是沒有用的,一定要把這些招式敲一邊,然後動手運作一下,調試一些,加深印象。

了解了消化了,才會吸引為自己的,功力才能大漲。也不枉小編熬夜編寫,逛了好久才找到的這份寶典。

其實Python是入門容易精通難,啥也不說了,趕緊練吧!如果對你有用,留言區吱一聲。

更多的短小精悍的小例子,檢視連結:

https://github.com/jackzhenguo/python-small-examples

近期熱門:

牆裂推薦!B站上的Python學習資源隻要三步,帶你用Python換臉趣味!用Python竟然還能做一個文字套娃隻要三步,帶你用Python換臉一行Python代碼寫的遊戲,我能這樣玩一天!讓你縱橫 GitHub 的五大神器

程式員GitHub 由菜鳥學Python原班人馬打造的公衆号【程式員GitHub】開始啦!

python groupby用法_GitHub标星3.9K!223個Python小例子,一次讓你吃個夠!

專注于分享GitHub上有趣的資源包括

Python,Java,Go語言

前端學習等優質的學習資源

分享程式員圈的新鮮趣事,熱門幹貨,職場感悟

點的“在看”,否則就看不到我了555