\

Pythonでは、特定の時間だけプログラムを一時停止させるためにsleep関数を使用することができます。また、非同期プログラミングにおいては、asyncio.wait_for関数を使用して特定の時間内に非同期タスクが完了するのを待つことも可能です。

Pythonのsleep関数

Pythonのsleep関数は、指定した秒数だけプログラムを一時停止させるための関数です。この関数はtimeモジュールに含まれており、以下のように使用します。

import time

print("Start")
time.sleep(5)  # 5秒間待機
print("End")

上記のコードでは、”Start”を出力した後に5秒間プログラムを一時停止し、その後に”End”を出力します。

Pythonのasyncio.wait_for関数

Pythonのasyncio.wait_for関数は、特定の時間内に非同期タスクが完了するのを待つための関数です。この関数はPython 3.4.1以降で利用可能で、以下のように使用します。

import asyncio

async def my_coroutine():
    # 何かの処理
    pass

async def main():
    try:
        await asyncio.wait_for(my_coroutine(), timeout=1.0)
    except asyncio.TimeoutError:
        print('The coroutine took too long, cancelling the task...')

asyncio.run(main())

上記のコードでは、my_coroutineという非同期タスクが1秒以内に完了するのを待っています。もし1秒以内に完了しなければ、asyncio.TimeoutError例外が発生します。

以上がPythonで待機処理を行う基本的な方法です。これらの関数を適切に使用することで、プログラムの動作をより細かく制御することが可能になります。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です