Za pomocą metody snu w Python

Za pomocą metody snu w Python
Jeśli chcesz ustawić opóźnienie czasowe przed wykonaniem dowolnego skryptu, możesz użyć spać() funkcja wbudowana w Python. Ta metoda istnieje pod czas moduł. Zasadniczo funkcja sleep () służy do zatrzymania wykonywania programu dla danego okresu (w sekundach). Na przykład, jeśli pobierasz plik z lokalizacji za pomocą skryptu, który może wymagać określonego okresu, możesz użyć metody sleep (), aby poinformować użytkownika do oczekiwania. Ten samouczek pokaże ci niektóre z różnych zastosowań funkcji snu () w Python 3.

Składnia

Poniższy przykład pokazuje proste użycie funkcji sleep () do zatrzymania wykonywania programu w środku skryptu na określony okres. Skrypt będzie odczytał i drukował bieżącą wartość czasu systemu, czekać 5 sekund w ramach funkcji slee () i ponownie odczytać i wydrukuj bieżący czas systemu. Tutaj funkcje LocalTime () i Time () są używane do odczytu bieżącej daty i godziny systemu, a funkcja strftime () służy do wydrukowania czasu sformatowanego.

#!/usr/bin/env python3
# Moduł czasu importu
czas importu
# Przeczytaj aktualną datę i godzinę
teraz = czas.czas lokalny (czas.czas())
# Drukuj czas rozpoczęcia
Drukuj (czas.Strftime („Czas rozpoczęcia:%h:%m:%s”, teraz))
# Poczekaj na 5 sekund
Drukuj („Czekam na 5 sekund…”)
czas.sen (5)
# Przeczytaj aktualną datę i godzinę
teraz = czas.czas lokalny (czas.czas())
# Wydrukuj czas zakończenia
Drukuj (czas.Strftime („Czas końcowy:%h:%m:%s”, teraz))

Wyjście

Następujące dane wyjściowe pojawią się po uruchomieniu powyższego skryptu. Wyjście pokazuje, że czas trwania między czasem rozpoczęcia a czasem końcowym wynosi 5 sekund, przy użyciu funkcji sleep ().

Przykład 2: Utwórz licznik czasowy za pomocą sleep ()

Poniższy przykład pokazuje, jak łatwo utworzyć licznik czasowy za pomocą metody sleep (). Skrypt zajmie liczbę w sekundach, aby zainicjować zmienną licznika czasu. Tutaj importowane są trzy moduły. Datetime Moduł jest importowany, aby ustawić początkową wartość czasu. czas Moduł jest importowany, aby korzystać z funkcji sleep (). Sys Moduł służy do zakończenia nieskończoności, gdy pętla, gdy wartość licznika jest równa wartości licznika czasu. W skrypcie używane są cztery zmienne do zainicjowania zmiennych godzin, minuty, drugiej i liczników, aby ustawić czas rozpoczęcia licznika czasu. Tutaj funkcja sleep () będzie czekać na jedną sekundę w każdej iteracji pętli, a następnie wydrukuje wartość licznika czasu.

#!/usr/bin/env python3
# Importuj moduł DATETIME
Importuj datetime
# Moduł czasu importu
czas importu
# Importuj moduł SYS
Import Sys
# Poświęć liczbę sekund, aby się liczyć
timer = int (input („Ustaw wartość licznika w sekundach:”))
# Zainicjuj wartość czasu i liczby do 0
godzina = minuta = druga = licznik = 0
# Wydrukuj wartość stawki początkowej
Drukuj (DateTime.czas (godzina, minuta, druga))
próbować:
# Zdefiniuj nieskończoną pętlę
Choć prawda:
# Opóźnienie na 1 sekundę
czas.sen (1)
# Licznik przyrostowy o 1
licznik = licznik + 1
# Przyrost drugi na 1
drugi = drugi + 1
# Wydrukuj bieżącą wartość timera
Drukuj (DateTime.czas (godzina, minuta, druga))
# Ustaw drugą wartość na 0, gdy wartość jest więcej niż 60
Jeśli drugi> 60:
minutę = minutę + 1
drugi = 0
# Ustaw wartość minuty na 0, gdy wartość jest więcej niż 60
Jeśli minuta> 60:
godzina = godzina + 1
Minute = 0
# Zakończ pętlę, gdy wartość licznika jest równa wartości timera
Jeśli licznik == timer:
Drukuj („Czas gotowy.")
przerwa
Z wyjątkiem klawiatury
# Zakończ skrypt po naciśnięciu Ctrl+C
Sys.Wyjście

Wyjście

Następujące dane wyjściowe pojawią się po uruchomieniu skryptu.

Przykład 3: Wydrukuj każdy znak ciągu z opóźnieniem

Jeśli chcesz wyświetlić każdy znak tekstu z pewnym opóźnieniem w wyjściu, możesz zastosować funkcję sleep () w skrypcie. Podobne zadanie pokazano w następującym skrypcie. Tutaj wartość tekstu jest traktowana jako dane wejściowe. Każda postać tekstu jest iterowana za pomocą pętli, a funkcja będzie czekać na 0.4 sekundy przed wydrukowaniem.

#!/usr/bin/env python3
# Moduł czasu importu
czas importu
# Weź wartość ciągu
name = input („Wprowadź swoje imię:”)
# Iteruj pętlę, aby odczytać każdą znak z łańcucha
Dla Val w imieniu:
# Wydrukuj każdą postać bez nowej linii
print (val, end = ”)
# Poczekaj na 0.4 sekundy po wydrukowaniu każdej postaci
czas.spać (0.4)

Wyjście

Uruchom skrypt. Zrozumiesz odpowiednio wyjście po uruchomieniu skryptu.

Przykład 4: Użycie snu () w skrypcie wielokrotnym

Poniższy przykład pokazuje użycie funkcji sleep () w skrypcie Python z wielokrotnym. Dwa moduły są importowane tutaj: moduł czasowy do używania funkcji sleep () i modułu gwintowania do tworzenia wielu wątków. W skrypcie używane są dwie niestandardowe funkcje. Wiadomość tekstowa zostanie wydrukowana i czeka na 0.5 sekundy trzykrotnie w pętli dla pierwszego wątku, gdy zaczyna się pierwszy wątek. Wiadomość tekstowa zostanie wydrukowana i czeka na 1 Drugi na cztery razy w pętli dla dla drugiego wątku.

#!/usr/bin/env python3
# Moduł czasu importu
czas importu
# Importuj moduł gwintowania
importować wątek
# Zdefiniuj pierwszą funkcję wątku
def prn_message_1 ():
dla n w zakresie (3):
Drukuj („Wydrukuj wątek 1 komunikat”)
czas.spać (0.5)
# Zdefiniuj funkcję drugiego wątku
def prn_message_2 ():
dla n w zakresie (4):
Drukuj („Wydrukuj wątek 2 komunikat”)
czas.sen (1)
# Ustaw pierwszą funkcję wątku
Thread1 = Whereing.Wątek (cel = prn_message_1)
# Rozpocznij pierwszą funkcję wątku
Thread1.początek()
# Ustaw funkcję drugiego wątku
Thread2 = Whereing.Wątek (cel = prn_message_2)
# Rozpocznij funkcję drugiego wątku
wątek2.początek()

Wyjście

Następujące dane wyjściowe pojawią się po uruchomieniu skryptu. Po rozpoczęciu pierwszego wątku drugi wątek zaczyna się i poczekaj do zakończenia 1 sekundy. W tym czasie pętla pierwszego wątku jest zakończona dwie ostatnie iteracje. Ostatnie trzy wyjścia pojawiły się dla pętli drugiego wątku.

Wniosek

Funkcja snu () służy do rozwiązania wielu różnych rodzajów problemów związanych z czasem w Pythonie. Różne zastosowania tej metody są wyjaśnione przy użyciu bardzo łatwych przykładów tutaj, aby pomóc czytelnikowi poznać funkcje tego narzędzia. Uważam, że ty lub jakikolwiek inny użytkownik Pythona będzie mógł prawidłowo użyć tej metody po ćwiczeniu przykładów zawartych w tym samouczku.