當前位置:
首頁 > 最新 > Python3實用編程技巧+案例

Python3實用編程技巧+案例

程序員修鍊營

免費分享最新的編程資源、實用工具等。

最近這幾天為了給大家寫幾篇Python的文章,營長特意重新拾起了好久沒玩的Python,給大家整理了Python常用的一些編程技巧。

下面就是幾個常用的很簡單的Python技巧,如果你還沒了解過,建議收藏一下,希望你能學到這一波操作。

文末附上了一些新更新的Python學習資源哦~

一、如何在列表,字典,集合中根據條件篩選數據?

問題1:

如何過濾掉列表[3,9,-1,10,20,-2]中的負數?

解決方法:

在Python中可以使用函數式編程,列表解析,字典解析集合解析等方式進行篩選。

1)最通常的方法:迭代

2)使用filter函數

注意Python3中的filter函數返回的對象從列表改為了Iterator(迭代器),因此如果想返回一個列表,就要加上list()

3)列表解析

結果和使用filter函數相同,但是使用列表解析所需的時間要比使用filter快很多,所以首選的方式就是列表解析,另外這兩種方式都遠快於迭代的方式。

問題2:

如何篩選出字典中值高於90的項?

解決方法:

問題3:

如何篩選出集合中能被3整除的元素?

解決方法:

二、如何為元組中的每個元素命名,提高程序的可讀性?

實際案例:

如學生信息管理系統中數據為固定格式:

(名字,年齡,性別...)

學生數量很大,為了減少存儲開銷,對每個學生信息採用元組表示:

(『jam』,16,』male』)

(『tom』,18,』male』)

(『july』,19,』female』)

...

訪問元組時,需要使用索引(index)來訪問,

如一個學生元組為student = ("jam",19,"male"),那麼想要訪問其名字時要使用student[0],訪問其性別時要使用student[2]

由此帶來的問題是大量的索引會降低程序的可讀性,

那麼如何來解決這個問題呢?

有兩種解決方案

方案1:定義枚舉類型,也就是定義一系列數值常量

方案2:使用標準庫中collections.namedtuple替代內置的tuple

三、如何統計序列中元素的出現頻度?

問題1:

某隨機序列[12,5,6,4,6,5,5,7,...]中,找到出現次數最高的3個元素,它們出現次數是多少?

解決方法:

統計元素出現的次數

為了找出出現次數最高的三個元素,可以使用collections.Counter對象,將序列傳入Counter的構造器,得到Counter對象是元素頻率的字典。Counter.most_common(n)方法得到頻率最高的n個元素的列表。

問題2:

對某英文文章的單詞進行詞頻統計,找到出現次數最高的3個單詞?

四、如何根據字典中值的大小,對字典中的項進行排序?

案例:

某班英語成績以字典形式存儲為:

{『LiLei』:79,』Jim』:88,』Lucy』:92...}

要根據成績高低,計算學生排名

解決方法:

使用Python的內置函數sorted進行排序,sorted函數通常用於對列表的排序,如sorted([2,1,5,9,3])

若對字典進行排序可先利用zip將字典數據轉化為元組在進行排序。

第二種方式可以通過傳遞sorted函數的key參數進行排序

好啦,由於時間有限,今天暫時先給大家分享這幾個技巧,如果大家喜歡的話,後面我還會再整理分享一期,敬請關注!

福利時刻:

最後給大家整理了一些Python相關的資源,如果大家還需要什麼資源,都可以加我微信反饋,公眾號里什麼資料都有,我會陸續整理送給大家的,搜索lovebugs88即可加到營長的微信。

這次的彩蛋包括 「史上最全的Python學習資料 PDF電子書 大合集」、「Python3網路爬蟲實戰」、「零基礎入門學習Python視頻教程全套96集」、「Python數據分析與建模庫」。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Python 的精彩文章:

Pycharm激活、配置以及快捷方式
厲害了,我的Python!

TAG:Python |