Python

Използване на метода на sleep () на Python

Използване на метода на sleep () на Python
Ако искате да зададете закъснение преди изпълнение на който и да е скрипт, тогава можете да използвате сън () функция, която е вградена в Python. Този метод съществува под време модул. Обикновено функцията sleep () се използва за спиране на изпълнението на програмата за дадения период от време (в секунди). Например, ако изтегляте файл от местоположение с помощта на скрипт, който може да изисква определен период от време, тогава можете да използвате метода sleep (), за да информирате потребителя да изчака. Този урок ще ви покаже някои от различните приложения на функцията sleep () в Python 3.

Синтаксис

Следващият пример показва простото използване на функцията sleep (), за да спре изпълнението на програмата в средата на скрипта за определен период. Скриптът ще прочете и отпечата текущата стойност на системното време, ще изчака 5 секунди под функцията sleep () и отново ще прочете и отпечата текущото системно време. Тук функциите localtime () и time () се използват за четене на текущата системна дата и час, а функцията strftime () се използва за отпечатване на форматираното време.

#!/ usr / bin / env python3
# Модул за импортиране на времето
време за импортиране
 
# Прочетете текущата дата и час
сега = време.местно време (време.време ())
 
# Начален час на печат
печат (време.strftime ("Началното време:% H:% M:% S", сега))
 
# Изчакайте 5 секунди
печат ("Изчаква се 5 секунди ...")
време.сън (5)
 
# Прочетете текущата дата и час
сега = време.местно време (време.време ())
 
# Краен час на печат
печат (време.strftime ("Крайното време:% H:% M:% S", сега))

Изход

Следният изход ще се появи след стартиране на горния скрипт. Резултатът показва, че продължителността между началното и крайното време е 5 секунди, като се използва функцията sleep ().

Пример 2: Създайте брояч на времето, използвайки сън ()

Следващият пример показва как лесно да създадете брояч на време чрез метода sleep (). Скриптът ще отнеме число за секунди, за да инициализира променливата на брояча на времето.  Тук се внасят три модула. The Време за среща модул се импортира за задаване на началната стойност на времето. The време модул се импортира, за да се използва функцията sleep (). The sys модул се използва за прекратяване на безкрайния цикъл while, когато стойността на брояча е равна на стойността на брояча на времето. Четири променливи се използват в скрипта, за да инициализират променливите час, минута, секунда и брояч, за да зададат началния час на брояча на времето. Тук функцията sleep () ще изчака една секунда във всяка итерация на цикъла и след това ще отпечата стойността на брояча на времето.

#!/ usr / bin / env python3
# Импортиране на модул за дата и час
импортиране на дата и час
# Модул за импортиране на времето
време за импортиране
# Импортиране на модул sys
импортиране на sys
 
# Вземете броя секунди за отчитане
timer = int (вход ("Задаване на стойността на брояча в секунди:"))
# Инициализирайте времето и стойността на брояча на 0
час = минута = секунда = брояч = 0
 
# Отпечатайте началната стойност на таймера
печат (дата и час.време (час, минута, секунда))
опитвам:
# Определете безкраен цикъл
докато е вярно:
 
# Забавяне за 1 секунда
време.сън (1)
# Увеличаване на брояч с 1
брояч = брояч + 1
# Увеличение второ с 1
втора = втора + 1
# Отпечатайте текущата стойност на таймера
печат (дата и час.време (час, минута, секунда))
# Задайте втората стойност на 0, когато стойността е повече от 60
ако е втора> 60:
минута = минута + 1
второ = 0
# Задайте минутна стойност на 0, когато стойността е повече от 60
ако минута> 60:
час = час + 1
минута = 0
# Прекратете цикъла, когато стойността на брояча е равна на стойността на таймера
ако брояч == таймер:
print ("Времето приключи.")
почивка
с изключение на KeyboardInterrupt:
# Прекратете скрипта, когато натиснете Ctrl + C
sys.изход

Изход

След стартиране на скрипта ще се появи следният изход.

Пример 3: Отпечатайте всеки символ на низ със закъснение

Ако искате да покажете всеки символ на текст с известно закъснение в изхода, тогава можете да приложите функцията sleep () в скрипта. Подобна задача е показана в следващия скрипт. Тук като вход се приема текстова стойност. Всеки знак от текста се повтаря с помощта на цикъла и функцията ще изчака 0.4 секунди преди печат.

#!/ usr / bin / env python3
# модул за време за импортиране
време за импортиране
 
# Вземете стойност на низ
name = input ("Въведете вашето име:")
# Итерирайте цикъла, за да прочетете всеки символ от низа
за val в име:
# Отпечатайте всеки знак без нов ред
печат (val, end = ")
# Изчакайте 0.4 секунди след отпечатване на всеки знак
време.сън (0.4)

Изход

Стартирайте скрипта. Ще разберете изхода правилно след стартиране на скрипта.

Пример 4: Използване на sleep () в Multi-Threaded Script

Следващият пример показва използването на функцията sleep () в многонишковия скрипт на Python. Тук се импортират два модула: времевият модул за използване на функцията sleep () и модулът за резба за създаване на множество нишки. В скрипта се използват две потребителски функции. Ще се отпечата текстово съобщение и ще се изчака 0.5 секунди за три пъти в цикъла for, когато стартира първата нишка. Ще се отпечата текстово съобщение и ще се изчака 1 второ за четири пъти в цикъла for, когато стартира втората нишка.

#!/ usr / bin / env python3
# модул за време за импортиране
време за импортиране
# Импортиране на модул за резби
внос резби
 
# Определете функцията на първата нишка
def prn_message_1 ():
за n в обхват (3):
print ("Печат на нишка 1 съобщение")
време.сън (0.5)
 
# Определете функцията на втората нишка
def prn_message_2 ():
за n в обхват (4):
print ("Печат на нишка 2 съобщение")
време.сън (1)
 
# Задайте функцията за първата нишка
thread1 = резба.Тема (цел = prn_message_1)
# Стартирайте функцията за първа нишка
конец1.старт ()
# Задайте втората функция на нишката
thread2 = резба.Тема (цел = prn_message_2)
# Стартирайте втората функция на нишката
конец2.старт ()

Изход

След стартиране на скрипта ще се появи следният изход. След стартиране на първата нишка започва втората нишка и изчакайте до завършване за 1 секунда. През това време цикълът на първата нишка завършва последните две итерации. Последните три изхода се появиха за цикъла на втората нишка.

Заключение

Функцията sleep () се използва за решаване на много различни видове свързани с времето проблеми в Python. Различните приложения на този метод са обяснени с помощта на много лесни примери тук, за да помогнат на читателя да разбере функциите на този инструмент. Вярвам, че вие ​​или който и да е друг потребител на Python ще можете да използвате правилно този метод, след като отработите примерите, включени в този урок.

Vulkan за потребители на Linux
С всяко ново поколение графични карти виждаме, че разработчиците на игри преместват границите на графичната вярност и се приближават една крачка до фо...
OpenTTD срещу Simutrans
Създаването на собствена транспортна симулация може да бъде забавно, релаксиращо и изключително примамливо. Ето защо трябва да сте сигурни, че изпробв...
Урок за OpenTTD
OpenTTD е една от най-популярните бизнес симулационни игри там. В тази игра трябва да създадете прекрасен транспортен бизнес. Въпреки това, ще започне...