五個最有用的Python技巧 - dannysteenman
這裡有5個Python技巧,這些技巧使編寫程式碼比以往任何時候都更有效率。可以編寫更好,更緊湊的Python程式碼。
1.生成器Generator函式
Generator函式是一種特殊型別的函式,它不返回單個值,而是返回帶有一系列值的迭代器物件:
def mygenerator(): print('First item') yield 10 print('Second item') yield 20 print('Last item') yield 30 |
>>> gen = mygenerator()
>>> next(gen)
First item
10
>>> next(gen)
Second item
20
>>> next(gen)
Last item
30
它使用yield而不是return關鍵字。因此,yield每次呼叫時都會針對關鍵字返回值。但是,您需要為此函式建立一個迭代器如next();生成器函式不能包含return關鍵字。如果包含它,它將終止該功能,return語句返回值並終止函式的執行。
2.裝飾器decorator
裝飾器是Python中的一種設計模式,它允許使用者向現有物件新增新功能而無需修改其結構。
def a_new_decorator(a_func): def wrapTheFunction(): print("I am doing some boring work before executing a_func()") a_func() print("I am doing some boring work after executing a_func()") return wrapTheFunction def a_function_requiring_decoration(): print("I am the function which needs some decoration to remove my foul smell") a_function_requiring_decoration() outputs: "I am the function which needs some decoration to remove my foul smell" a_function_requiring_decoration = a_new_decorator(a_function_requiring_decoration) now a_function_requiring_decoration is wrapped by wrapTheFunction() a_function_requiring_decoration() outputs:I am doing some boring work before executing a_func() # I am the function which needs some decoration to remove my foul smell # I am doing some boring work after executing a_func() |
裝飾器用來包裝函式並以一種或另一種方式修改其行為。
3.三元運算子
三元運算子在Python中通常被稱為條件表示式。這些運算子根據條件是否成立來評估某些內容。他們成為2.4版Python的一部分
is_nice = True state = "nice" if is_nice else "not nice" |
它允許快速測試條件而不是使用多行if語句。通常,它可能非常有用,並且可以使您的程式碼緊湊但仍可維護。
4.Setattr和getattr setattr函式
set指定物件的指定屬性的值。getattr方法返回物件的命名屬性的值。
5.列舉
列舉為可迭代物件新增計數器,並以列舉物件的形式返回。
Python透過為該任務提供內建函式enumerate()減輕了程式設計師的任務。 Enumerate()方法向可迭代物件新增一個計數器,並以列舉物件的形式返回它。然後可以將此列舉物件直接用於for迴圈,或使用list()方法將其轉換為元組列表。
python # Python program to illustrate # enumerate function l1 = ["eat","sleep","repeat"] s1 = "geek" # creating enumerate objects obj1 = enumerate(l1) obj2 = enumerate(s1) print ("Return type:",type(obj1)) print (list(enumerate(l1))) # changing start index to 2 from 0 print (list(enumerate(s1,2))) 輸出: Return type: < type 'enumerate' > <p class="indent">[(0, 'eat'), (1, 'sleep'), (2, 'repeat')] <p class="indent">[(2, 'g'), (3, 'e'), (4, 'e'), (5, 'k')] |
相關文章
- 8個有用的JS技巧JS
- 8 個有用的 JS 技巧JS
- 4個非常有用的 Flutter 技巧Flutter
- [轉]23個最有用的Elasticsearch檢索技巧Elasticsearch
- 10個超級有用的Python工具!Python
- 網上看到的“12個非常有用的JavaScript技巧”JavaScript
- 45個有用的JavaScript技巧,竅門和最佳實踐JavaScript
- 《三分鐘閱讀》7個有用的JavaScript技巧JavaScript
- Python五種實用的小技巧Python
- 最簡單易懂的laravel事件,這個功能非常的有用Laravel事件
- 【Python入門教程】五個常見的最佳化SQL的技巧!PythonSQL
- 23個最有用的ES檢索技巧(Java API實現)JavaAPI
- 【譯】8個有用的 CSS 技巧:視差影象,sticky footer 等等CSS
- 常見的Python五大直譯器!很有用哦Python
- 那些有趣/有用的 Python 庫Python
- 使用 Python Pip 的 10 個技巧Python
- Python中非常有用的三個資料科學庫Python資料科學
- 7個你可能不知道的蘋果Mac使用技巧 非常有用蘋果Mac
- 一些有用的Python庫Python
- 8個關於Python的小技巧Python
- 介紹五個很實用的IDEA使用技巧Idea
- 五個 goland 進行 go 開發的小技巧GoLand
- 5個支援Python的遊戲開發庫!真的很有用Python遊戲開發
- python的五個特點,你知道幾個?Python
- 30個Python常用小技巧Python
- 11個Python迴圈技巧Python
- git裡最有用最經常使用的東西Git
- 每週分享五個 PyCharm 使用技巧(一)PyCharm
- 每週分享五個 PyCharm 使用技巧(三)PyCharm
- 每週分享五個 PyCharm 使用技巧(二)PyCharm
- 提高Python執行效率的5個技巧!Python
- 銷售使用CRM系統整合Excel的五個技巧Excel
- 「萌新上手Mac」玩轉MacBook的五個使用技巧Mac
- 【翻譯】Traits:一種新的而且有用的Template技巧AI
- 您可能不瞭解git log的有用技巧 - Git BetterGit
- Python語言最讓人心動的五大優勢!Python
- Python學習中:最感到驚奇35個語言特徵和程式設計技巧Python特徵程式設計
- python技巧 合併兩個字典Python