funkcje¶

time.asctime()¶

Konwertuj krotkę lub struct_time reprezentującą czas jako zwracane przezgmtime() lub localtime() do ciągu następującego wzoru: 'Sun Jun 20 23:21:05 1993'. Pole day ma długość dwóch znaków i jest spacją, jeśli dzień jest pojedynczą cyfrą, np.: 'Wed Jun 9 04:26:40 1993'.,

Jeśli t nie jest podany, używany jest bieżący czas zwracany przezlocaltime(). Informacje lokalne nie są używane przez asctime().

Uwaga

W przeciwieństwie do funkcji C O tej samej nazwie,asctime() nie dodaje nowej linii.

time.pthread_getcpuclockid(thread_id)¶

zwraca clk_id zegara czasu procesora dla określonego thread_id.,

użyjthreading.get_ident() lub atrybutuidentobiektówthreading.Thread aby uzyskać odpowiednią wartość dla thread_id.

Ostrzeżenie

podanie nieprawidłowego lub wygasłego identyfikatora thread_id może spowodować zdefiniowane zachowanie, takie jak błąd segmentacji.

dostępność: Unix(więcej informacji można znaleźć na stronie podręcznika dla pthread_getcpuclockid (3)).

nowość w wersji 3.7.

time.clock_getres(clk_id)¶

zwraca Rozdzielczość (Dokładność) określonego zegara clk_id., Zobacz stałe toClock ID dla listy akceptowanych wartości dla clk_id.

dostępność: Unix.

nowość w wersji 3.3.

time.clock_gettime(clk_id) → float¶

zwraca czas określonego zegara clk_id. Zobacz stałe toClock ID dla listy akceptowanych wartości dla clk_id.

dostępność: Unix.

nowość w wersji 3.3.

time.clock_gettime_ns(clk_id) → int¶

podobne doclock_gettime() ale zwracają czas jako nanosekundy.

dostępność: Unix.

nowość w wersji 3.7.,

time.clock_settime(clk_id, time: float)¶

Ustaw czas określonego zegara clk_id. ObecnieCLOCK_REALTIME jest jedyną akceptowaną wartością dla clk_id.

dostępność: Unix.

nowość w wersji 3.3.

time.clock_settime_ns(clk_id, time: int)¶

podobny doclock_settime() ale ustawia czas za pomocą nanosekund.

dostępność: Unix.

nowość w wersji 3.7.,

time.ctime()¶

Konwertuje czas wyrażony w sekundach od epoki na łańcuch postaci:'Sun Jun 20 23:21:05 1993' reprezentujący czas lokalny. Pole dnia ma długość dwóch znaków i jest spacją, jeśli dzień jest pojedynczą cyfrą, np.: 'Wed Jun 9 04:26:40 1993'.

time.get_clock_info(name)¶

pobiera informacje o podanym zegarze jako obiekcie przestrzeni nazw.,Obsługiwane nazwy zegarów i odpowiadające im funkcje do odczytu ich wartości:

wynik ma następujące atrybuty:

  • regulowane: True jeśli zegar może być zmieniany automatycznie (np. przez demona NTP) lub ręcznie przez administratora systemu, False w przeciwnym razie

  • implementacja: nazwa podstawowej funkcji C używanej do uzyskania wartości zegara. Możliwe wartości odnoszą się do stałych ID zegara.,

  • monotoniczny: True jeśli zegar nie może się cofnąć,False w przeciwnym razie

  • rozdzielczość: rozdzielczość zegara w sekundach (float)

nowość w wersji 3.3.

time.gmtime()¶

Konwertuje czas wyrażony w sekundach od epoki nastruct_time inUTC, w którym znacznik dst jest zawsze zerowy. Jeśli nie podano sec lubNone, używany jest bieżący czas zwracany przez ., Ułamki sekundy są ignorowane. Opis obiektustruct_time znajduje się powyżej. Zobaczcalendar.timegm() dla odwrotności tej funkcji.

time.localtime()¶

podobnie jakgmtime() ale konwertuje na czas lokalny. Jeśli nie podano sec lubNone, używany jest bieżący czas zwracany przez . Dstflag jest ustawiony na 1 gdy DST ma zastosowanie do podanego czasu.,

time.mktime(t)¶

jest to funkcja odwrotnalocaltime(). Jego argumentem jeststruct_time lub pełna 9-krotka (ponieważ znacznik dst jest potrzebny; użyj -1jako znacznika dst, jeśli jest nieznany), która wyraża czas w czasie lokalnym, notUTC. Zwraca liczbę zmiennoprzecinkową, dla zgodności z .,Jeśli wartość wejściowa nie może być reprezentowana jako prawidłowy czas,alboOverflowError lubValueError zostanie podniesiona (co zależy od tego, czy Nieprawidłowa wartość zostanie przechwycona przez Pythona lub bazowe biblioteki C).Najwcześniejsza data, dla której może wygenerować czas jest zależna od platformy.

time.monotonic() → float¶

Zwraca wartość (w ułamkowych sekundach) zegara monotonicznego, tzn. zegara, który nie może się cofnąć. Aktualizacje zegara systemowego nie mają wpływu na zegar.,Punkt odniesienia zwracanej wartości jest niezdefiniowany, tak że tylko różnica między wynikami kolejnych wywołań jest ważna.

nowość w wersji 3.3.

zmieniono w wersji 3.5: funkcja jest teraz zawsze dostępna i zawsze w całym systemie.

time.monotonic_ns() → int¶

podobne domonotonic(), ale zwracają czas jako nanosekundy.

nowość w wersji 3.7.

time.perf_counter() → float¶

Zwraca wartość (w ułamkowych sekundach) licznika wydajności, tj., aclock z najwyższą dostępną rozdzielczością do pomiaru krótkiego czasu. Obejmuje czas, jaki upłynął podczas snu i ma charakter ogólnoustrojowy. Wartość referencepoint zwracanej wartości jest niezdefiniowana, więc ważna jest tylko różnica między wynikami kolejnych wywołań.

nowość w wersji 3.3.

time.perf_counter_ns() → int¶

podobne doperf_counter(), ale zwracają czas jako nanosekundy.

nowość w wersji 3.7.,

time.process_time() → float¶

Zwraca wartość (w ułamkowych sekundach) sumy czasu systemu i userCPU bieżącego procesu. Nie obejmuje czasu, jaki upłynął podczas snu. Jest to proces z definicji. Punkt odniesienia tej wartości jest niezdefiniowany, tak że ważna jest tylko różnica między wynikami kolejnych wywołań.

nowość w wersji 3.3.

time.process_time_ns() → int¶

podobne doprocess_time() ale zwracają czas jako nanosekundy.,

nowość w wersji 3.7.

time.sleep(secs)¶

zawiesza wykonywanie wątku wywołującego dla podanej liczby sekund.Argument może być liczbą zmiennoprzecinkową, aby określić dokładniejszy czas uśpienia. Rzeczywisty czas zawieszenia może być krótszy niż wymagany, ponieważ sygnał anycaught zakończysleep() po wykonaniu procedury przechwytywania thatsignal. Ponadto, czas zawieszenia może być dłuższy niż żądana przez dowolną kwotę z powodu planowania innych działań w systemie.,

zmieniony w wersji 3.5: funkcja uśpi teraz co najmniej sekundę, nawet jeśli uśpienie jest przerywane przez sygnał, z wyjątkiem sytuacji, gdy obsługa sygnału podnosi wyjątek(zobacz uzasadnienie 475).

time.strftime(format)¶

Konwertuj krotkę lub struct_time reprezentującą czas zwrócony przezgmtime() lub localtime() do ciągu znaków określonego przez formatargument. Jeśli t nie jest podany, używany jest bieżący czas zwracany przezlocaltime(). format musi być ciągiem znaków., ValueError

0 jest argumentem prawnym dla dowolnej pozycji w krotce czasowej; jeśli jest ona normalnie, to wartość jest wymuszona na poprawnej.

następujące dyrektywy mogą być osadzone w łańcuchu formatu., Są one wyświetlane bez opcjonalnej specyfikacji szerokości pola i precyzji i są zastępowane przez wskazane znaki w strftime() wynik:

uwagi:

  1. gdy są używane z strptime(), tylko dyrektywa %p wpływa na pole output hour, jeśli do analizy godziny używana jest dyrektywa %I.,

  2. zakres rzeczywiście jest 0 do 61; wartość 60 jest poprawna intimestamps reprezentujących sekundy przestępne i wartość 61 jest wspierany ze względów historycznych.

  3. gdy są używane z funkcją strptime(), %UI %W są używane tylko wtedy, gdy podano dzień tygodnia i rok.

oto przykład, format dat zgodny z tym określonym w standardzie poczty internetowej theRFC 2822., 1

>>> from time import gmtime, strftime>>> strftime("%a, %d %b %Y %H:%M:%S +0000", gmtime())'Thu, 28 Jun 2001 14:17:15 +0000'

dodatkowe dyrektywy mogą być obsługiwane na niektórych platformach, ale tylko wymienione tutaj dyrektywy mają znaczenie znormalizowane przez ANSI C. aby zobaczyć pełny zestaw kodów formatów obsługiwanych na twojej platformie, zapoznaj się z dokumentacją strftime(3).

na niektórych platformach opcjonalna szerokość pola i precyzyjna specyfikacja mogą być zgodne z początkową'%' dyrektywy w następującej kolejności;ta również nie jest przenośna. Szerokość pola wynosi zwykle 2, z wyjątkiem %j, gdzie jest to 3.,

time.strptime(string)¶

Parse a string representing a time according to a format. Zwracana wartość to struct_timejako zwracana przez gmtime()lublocaltime().

parametr format używa tych samych dyrektyw, co te używane przezstrftime(); domyślnie jest to "%a %b %d %H:%M:%S %Y", co odpowiada formatowaniu zwracanemu przez ctime(). Jeśli ciąg nie może być parsowany zgodnie z formatem, lub jeśli ma nadmiar danych po parsowaniu,ValueError., Domyślne wartości używane do uzupełnienia brakujących danych, gdy nie można wywnioskować większej liczby wartości, to (1900, 1, 1, 0, 0, 0, 0, 1, -1).Zarówno string, jak i format muszą być ciągami.

na przykład:

Obsługa dyrektywy %Z opiera się na wartościach zawartych w tznameI czy daylight jest prawdziwa. Z tego powodu jest to specyficzna dla platformy procedura rozpoznawania UTC i GMT, które są zawsze znane (i są uważane za strefy czasowe bezterminowe).

wspierane są tylko dyrektywy określone w dokumentacji., Ponieważstrftime() jest zaimplementowana na platformę, czasami może oferować więcej niż wymienione. Jednak strptime() jest niezależny od jakiejkolwiek platformy, a zatem niekoniecznie obsługuje wszystkie dostępne dyrektywy, które nie są dokumentowane jako obsługiwane.

classtime.struct_time

Typ sekwencji wartości czasu zwracanej przez gmtime(),localtime() I strptime(). Jest to obiekt z namedtuple interface: do wartości można uzyskać dostęp po indeksie i po nazwie atrybutu., Następujące wartości są obecne:

zauważ, że w przeciwieństwie do struktury C , wartość miesiąca jest zakresem, not.

w wywołaniach mktime(), tm_isdst może być ustawione na 1, gdy czas daylightsavings jest aktywny, a 0, gdy nie jest. Wartość -1 oznacza, że nie jest znana i zwykle spowoduje wypełnienie prawidłowego stanu.

gdy krotka o nieprawidłowej długości jest przekazywana do funkcji oczekującejstruct_time, lub posiadającej elementy niewłaściwego typu, podnoszony jestTypeError.,

time.time() → float¶

zwraca czas w sekundach od epoki jako zmienny numer punktu. Konkretna data epoki i obsługa sekund Leap jest zależna od platformy.W systemie Windows i większości systemów uniksowych Epoka jest 1 stycznia 1970,00: 00: 00 (UTC), a sekundy przestępne nie są liczone do czasu w sekundach od epoki. Jest to powszechnie określane jako Unix time.To dowiedz się, jaka jest Epoka na danej platformie, zajrzyj dogmtime(0).,

zauważ, że chociaż czas jest zawsze zwracany jako zmienny numer punktu, nie wszystkie systemy zapewniają czas z lepszą dokładnością niż 1 sekunda.Podczas gdy ta funkcja normalnie zwraca wartości nie malejące, może zwrócić większą wartość niż poprzednie wywołanie, jeśli zegar systemowy został ustawiony wstecz między dwoma wywołaniami.

Liczba zwracana przeztime() może być przekonwertowana do bardziej popularnego formatu czasu UTC (np. Rok, Miesiąc, Dzień, godzina itp.), przekazując ją do funkcjigmtime() lub w czasie lokalnym, przekazując ją do funkcjilocaltime()., W obu przypadkach zwracany jest obiektstruct_time, z którego jako atrybuty można uzyskać dostęp do składników daty kalendarzowej.

time.thread_time() → float¶

Zwraca wartość (w ułamkowych sekundach) sumy czasu systemu i userCPU bieżącego wątku. Nie obejmuje czasu, jaki upłynął podczas snu. Jest z definicji specyficzny dla wątku. Punkt odniesienia tej wartości jest niezdefiniowany, tak że ważna jest tylko różnica między wynikami kolejnych wywołań w tym samym wątku.,

dostępność: systemy Windows, Linux, Unix obsługująceCLOCK_THREAD_CPUTIME_ID.

nowość w wersji 3.7.

time.thread_time_ns() → int¶

podobne dothread_time() ale zwracają czas jako nanosekundy.

nowość w wersji 3.7.

time.time_ns() → int¶

podobne do time() ale zwraca czas jako liczbę całkowitą nanosekund od epoki.

nowość w wersji 3.7.,

time.tzset()¶

resetuje reguły konwersji czasu używane przez procedury biblioteki. EnvironmentvariableTZ określa, jak to się robi., Ustawia również zmiennetzname (ze zmiennej środowiskowej TZ), timezone (non-DSTseconds West of UTC), altzone (DST seconds west of UTC) i daylight(do 0, jeśli ta strefa czasowa nie ma żadnych reguł dotyczących czasu letniego, lub tononzero, jeśli istnieje czas, przeszłość, teraźniejszość lub przyszłość, gdy obowiązuje czas letni).

dostępność: Unix.,

Uwaga

chociaż w wielu przypadkach zmiana zmiennej środowiskowejTZ może mieć wpływ na wyjście funkcji takich jaklocaltime() bez wywoływaniatzset(), nie należy polegać na tym zachowaniu.

zmienna środowiskowaTZ nie powinna zawierać białych znaków.,

standardowym formatem zmiennej środowiskowejTZ jest (whitespaceadded dla jasności):

std offset , end]]]

gdzie składniki są:

stdIdst

trzy lub więcej alfanumerycznych skrótów strefy czasowej. Zostaną one przełożone na czas.tzname

offset

offset ma postać: ± hh]. Oznacza to wartość czasu lokalnego do przybycia na UTC., Jeśli poprzedzone jest” -„, strefa czasowa jest na wschód od południka pierwszego; w przeciwnym razie jest na zachód. W przypadku braku przesunięcia, przyjmuje się, że czas letni jest o godzinę przed czasem standardowym.

start, end

wskazuje, kiedy zmienić DST na i z powrotem. Format daty rozpoczęcia i zakończenia jest jeden z następujących:

Jn

dzień juliański N (1<= n< = 365). Dni przestępne nie są liczone, więc we wszystkich latach 28 lutego jest dniem 59, A 1 marca Dniem 60.,

n

0 < = n < = 365). Dni przestępne są liczone, ijest to możliwe, aby odnieść się do lutego 29.

Mm.n.d

time ma ten sam format cooffset z wyjątkiem tego, że nie jest dozwolony żaden znak wiodący('-' lub’+'). Domyślną wartością, jeśli nie podano czasu, jest 02: 00: 00.

na wielu systemach uniksowych (w tym *BSD, Linux, Solaris i Darwin) wygodniej jest używać bazy danych systemu zoneinfo (tzfile(5)) do określenia reguł strefy czasowej., Aby to zrobić, ustaw środowiskoTZ zmienne na ścieżkę wymaganego pliku danych strefy czasowej, w stosunku do bazy danych strefy czasowej systemu 'zoneinfo', zwykle znajdującej się pod adresem/usr/share/zoneinfo. Na przykład 'US/Eastern','Australia/Melbourne', 'Egypt' lub 'Europe/Amsterdam'.

>>> os.environ = 'US/Eastern'>>> time.tzset()>>> time.tzname('EST', 'EDT')>>> os.environ = 'Egypt'>>> time.tzset()>>> time.tzname('EET', 'EEST')