کتابخانه time و winsound در پایتون

به دوره آموزش پایتون خوش آمدید. برای رفتن به اولین جلسه این دوره، اینجا کلیک کنید. جلسه قبل درمورد کتابخانه در پایتون صحبت کردیم. در این بخش میخواهیم با کتابخانه های time و winsound کار کنیم. در ابتدا بهتر است کتابخانه time را باز کنیم و ببینیم چه چیز هایی درون خود دارد. پس از dir استفاده میکنیم:

import time

print(dir(time))
# ['_STRUCT_TM_ITEMS', '__doc__', '__loader__',
# '__name__', '__package__', '__spec__', 'altzone',
# asctime', 'ctime', 'daylight', 'get_clock_info',
# 'gmtime', 'localtime', 'mktime', 'monotonic',
# 'monotonic_ns', 'perf_counter', 'perf_counter_ns',
# 'process_time', 'process_time_ns', 'sleep', 'strftime',
# 'strptime', 'struct_time', 'thread_time',
# 'thread_time_ns', 'time', 'time_ns', 'timezone', 'tzname']

میخواهیم با چندتایی از آن ها شروع کنیم. از خود time شروع میکنیم:

import time

print(time.time())
# ۱۵۸۹۹۵۵۵۲۳٫۷۳۹۳۹۷۳

یک عدد برمیگرداند که زمان حال را به ثانیه نشان میدهد. در ادامه در مورد مبدا زمانی آن بیشتر توضیح خواهیم داد. تابع دیگری وجود دارد به نام gmtime که مقدار ثانیه ای لحظه را که تا به اینجا دیدیم میگیرد و تاریخ و ساعت دقیق را بر میگرداند:

import time

print(time.gmtime(1589955523.7393973))
# time.struct_time(tm_year=2020, tm_mon=5, tm_mday=20, tm_hour=6, tm_min=18, tm_sec=43, tm_wday=2, tm_yday=141, tm_isdst=0)

میبینیم که سال، ماه، روز، ساعت، دقیقه، ثانیه، شماره روز در هفته و شماره روز در سال را به طور دقیق نمایش میدهد.

میخواهیم بدانیم مبدا زمانی که قبلا دیدیم از چه تاریخی شروع شده، پس کافیست در تابع gmtime عدد ۰ را وارد کنیم:

import time

print(time.gmtime(0))
# time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)

میبینیم که به اولین روز از اولین ماه از سال ۱۹۷۰ اشاره میکند که این تاریخ به طور قراردادی در سیستم عامل های ویندوز و بعضی از سیستم عامل های لینوکس درنظر گرفته شده است.

حال وقت آن است که درمورد تابع sleep صحبت کنیم. این تابع یک ورودی را بعنوان ثانیه میگیرد و به همان اندازه در اجرای برنامه وقفه می اندازد. یعنی وقتی بگوییم time.sleep(2)، کامپایلر وقتی به این خط برسد به مدت ۲ ثانیه متوقف میشود.

کتابخانه دیگری که میخواهیم درموردش صحبت کنیم، کتابخانه winsound میباشد. این کتابخانه روی ویندوز کار میکند و یک سری صدای ساده تولید میکند.

در این کتابخانه میتوان به تابع Beep اشاره کرد که یک بوق را به صدا در می آورد. دو ورودی میگیرد که اولی فرکانس بوق و دومی مدت زمان پخش بوق به میلی ثانیه میباشد.

کد زیر را روی کامپیوتر خود امتحان کنید تا ببینید چه اتفاقی می افتد:

import winsound, random

while True:
    f = random.randint(800, 20000)
    d = random.randint(100, 300)
    winsound.Beep(f, d)

در جلسه بعد درمورد مقدمات شی گرایی صحبت خواهیم کرد.

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *