Python是一個動態而友好的編程語言,提供了許多方便的庫和工具,能夠簡化開發並讓代碼更易於閱讀。其中,時間模塊是Python必不可少的一部分,因為很多應用都需要涉及到時間控制。Python的時間模塊在處理時間方面表現得非常出色,能夠輕鬆地實現精確的時間控制。
一、獲取當前時間
import datetime
now = datetime.datetime.now()
print("當前時間:", now)
我們使用`datetime.now()`函數獲取當前時間的精確值,並將其賦值給變量`now`。`now`包含當前日期和時間。在Python中,`datetime`模塊提供了許多操作時間的方法,例如格式化、時間差、曆法算術等等。
返回結果的格式為類似`2020-07-31 15:50:45.288150’`的字符串,其中,前19個字符表示當前日期和時間。如果要獲取指定格式的時間,可以使用`strftime()`函數。
today = datetime.date.today()
print("今天是:%s" % today.strftime("%Y年%m月%d日"))
以上代碼會輸出當前日期,格式為”2020年07月31日”。
二、定時任務
Python提供了`sched`模塊,它可以讓你創建一個調度程序,定時執行一個任務。其中,`sched`使用時間戳(從UTC1970年1月1日午夜開始的秒數)來表示時間。這裡有一個簡單的例子。
import time
import sched
def print_time():
print("現在的時間是:", time.time())
# 創建一個調度程序
scheduler = sched.scheduler(time.time, time.sleep)
# 延遲5秒執行print_time函數
scheduler.enter(5, 1, print_time, ())
scheduler.run()
以上代碼使用「scheduler」實現定時任務,它會延遲5秒後執行`print_time()`函數,並輸出當前時間。
三、計時器
計時器可用于衡量代碼塊或函數的運行時間。Python中的`time`模塊提供了`time()`函數,可以測量一段代碼實際運行的時間。
import time
start = time.time()
# 程序的核心代碼
end = time.time()
print("程序運行時間:", end - start)
在以上示例中,我們使用`start`變量記錄程序開始執行的時間戳。然後,運行程序中的部分代碼,並記錄結束時間。最後,輸出程序運行的時間(單位為秒)。
四、定時程序
我們可以結合計時器和定時任務的概念,創建一個定時程序,讓代碼定期執行。我們通過以下Python程序來實現:
import sched
import time
def run():
"""要執行的代碼"""
print("La La Lalala La La La~")
def timer(n):
"""定時功能,n為周期,單位為秒"""
while True:
scheduler.enter(0, 0, run, ())
scheduler.run()
time.sleep(n)
# 初始化scheduler
scheduler = sched.scheduler(time.time, time.sleep)
# 設定定時任務
timer(5)
以上代碼可以讓程序每5秒鐘輸出一次”Lalala~”字符串。
五、等待用戶輸入
有時候需要在某個時間點停止程序,並等待用戶輸入一個選擇,再做出下一步操作。Python中的`input()`函數可以實現等待用戶輸入的功能。例如:
def wait_user():
user_input = ""
while not user_input.isdigit():
user_input = input("請問您需要什麼幫助?"
"1.進入遊戲,2.退出遊戲\n")
if not user_input.isdigit():
print("請輸出數字選擇,1代表進入遊戲,2代表退出遊戲")
if user_input == "1":
start_game()
elif user_input == "2":
quit_game()
if __name__ == "__main__":
wait_user()
以上代碼實現了等待用戶輸入數字選擇的功能,如果用戶選擇進入遊戲,則會執行`start_game()`函數,如果選擇退出遊戲,則會執行`quit_game()`函數。
六、結語
Python的時間模塊很強大,能夠實現各種各樣的時間功能,上述演示的只是其中的幾個例子,你可以根據具體需求選擇合適的方法。這些功能不僅可用於控制程序的運行時間,也可以應用於時間戳、日期轉換、時間段比較等等。使用好時間模塊,能夠為你編寫高效的、精確的Python程序提供幫助。
原創文章,作者:IOTT,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/138294.html