大家好,我是 bug,一個普通程式員,
程式員的快速成長,在于多練習,多輸出,多分享,多鏈接,
怎奈執行力太差,錯過了很多好的機會,
什么時候開始都不算晚,歡迎大家關注,見證一個普通程式員的成長之路,
這里先立個 Flag,參加 濤哥聊Python技術圈 知識星球的每日作業打卡,先堅持 7 天,
問題:
Day1
Q15: 寫一個記錄函式執行時間的裝飾器,
解決:
完成今天的作業,對我來說,有兩個難題:
其一:Python 的開發環境,
其二:身為 Python 初學者,不太理解什么是裝飾器,需要研究下,
解決第一個問題,Python 開發環境,
百度關鍵詞,windows + python 環境配置,
就能準確搜到很多文章,都蠻詳細的,
找個生產日期比較新的,照著一步步配置輕松完成,
Python 用的 3.10 的版本,開發工具用的 PyCharm,沒什么特殊配置,省事,
第二個問題,Python 裝飾器,
同樣先百度,有條件可以 Google,
搜到相關文章后,進行閱讀學習,
學習了 python 函式的常見用法后,輕松將 demo 寫完,
裝飾器函式,就是定義一個裝飾器函式,另一個函式用這個裝飾器函式裝飾,當這個函式執行時,也會執行對應裝飾器函式中的功能,
通過 @裝飾器函式名 的呼叫方式實作,
代碼如下:
import time
def func_decorator_execute_and_execution_time_report(func):
def wrap_the_func():
before_func_time = time.time()
func()
after_func_time = time.time()
execution_time = after_func_time - before_func_time
print("func execution time: " + str(execution_time))
return wrap_the_func
@func_decorator_execute_and_execution_time_report
def hello_bug():
# 函式暫停 2 秒再執行
time.sleep(2)
print("hello bug")
hello_bug()
# 運行結果:
# hello bug
# func execution time: 2.004734992980957
總結:
好了,Day1 打卡結束,學到了 python 函式的常見用法,以及裝飾器函式的定義和使用,
如果你也正在學習 Python ,歡迎和 bug 一起交流,
關注公眾號 bug 玩編程,一起玩編程!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/327759.html
標籤:Python
下一篇:Python有序數列二分查找
