日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

分享3個簡單的Python代碼高效運行技巧_python

作者:趙卓不凡 ? 更新時間: 2022-06-01 編程語言

1. 引言

小伙伴們日常工作中都必不可少地使用Python實現一些簡單的功能,但是不同的人所編寫的代碼執行效率往往是不同的。本文重點介紹大家經常遇到的場景下,三個有效的,方便理解的,執行高效的實用技巧。

閑話少說,我們直接開始吧!!!

2. 獲取字典的值

不妨假設我們有以下字典:

my_dict = {'first_name': 'Michaela',
? ? ? ? ? ?'last_name': 'Kraushaar',
? ? ? ? ? ?'age': 36,
? ? ? ? ? ?'job': 'Pfleger',
? ? ? ? ? ?'country': 'Antarktis'}

一般來說,我們可以直接使用方括號來從字典中獲取每個鍵所對應的值,比如使用my_dict['country']即可獲取country所對應的值Antarktis。但是,如果我們的鍵值在字典中不存在呢?我們往往會遇到以下錯誤:

上圖中,我們嘗試獲取鍵city所對應的值,此時由于city不存在,我們將會拋出KeyError的異常,將終止我們代碼的執行。
當然,我們可以添加try-catch語句來捕捉相應的異常,但是我們可以有更好的選擇,那就是使用內置函數.get(),代碼如下:

可以看出,使用get()內置函數執行效率更高,同時如果鍵不存在時,并不會觸發異常,而是會返回None,如下所示:

初次之外,內置函數get()還可以傳入額外的輸出信息,如果鍵不存在時,樣例如下:

建議:

盡量使用get()函數來代替方括號來獲取字典中某個鍵的值

3. 循環中使用enumerate

通常,我們需要迭代循環一個范圍,比如listdictionary,同時還需要處理每個元素所對應的索引。

按照之前c/c++的經驗,大多數人往往傾向于在循環中使用range(len(iterable))來進行遍歷,但是這里更推薦使用enumerate(iterable),因為這種方式往往更加高效。

對比如下:

上述兩種實現,雖然結果一樣,但是enumerate(iterable)明顯更加方便易讀。除此之外,我們還可以自行決定,index下標開始的數值,如下所示:

更進一步地,使用函數enumerate(iterable),可以方便地產生下標和元素組合的元組,代碼如下:

建議:

盡量使用enumerate()函數來遍歷可迭代對象中的元素

4. 使用f-strings來拼接和打印字符串

格式化輸出可以使用函數format()。它允許使用簡單的占位符進行格式化。

一般來說,f-strings在需要格式化的字符串的開頭有一個字母f,同時在字符串中有多個占位符{}。

如下所示:

5. 總結

本文介紹了日常工作中常用的三個小技巧,這些小技巧都是工作中很小的細節,但是使用它們可以讓我們編寫的代碼更加簡潔、方便修改和高效運行。

原文鏈接:https://blog.csdn.net/sgzqc/article/details/123768298

欄目分類
最近更新