Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

Python's time-module beheersen: functies, structs en praktische voorbeelden

Python time-module

Verken de standaard time-module in Python, leer de kernfuncties en zie duidelijke voorbeelden die real-world gebruik demonstreren.

Python's time-module levert tools voor het werken met timestamps, scheduling en het meten van verstreken tijd. Voordat je een functie gebruikt, importeer de module:

import time

time.time()

De time()-functie retourneert de huidige tijd in seconden sinds de Unix-epoch (00:00:00 UTC op 1 januari 1970). Op Unix-achtige systemen is deze epoch-waarde vast; op Windows wordt deze afgeleid van hetzelfde punt.

import time

seconds = time.time()
print("Seconden sinds epoch =", seconds)

time.ctime()

Converteert een POSIX-timestamp (seconden sinds epoch) naar een leesbare string in de lokale tijdzone.

import time

seconds = 1545925769.9618232
local_time = time.ctime(seconds)
print("Lokale tijd:", local_time)

Typische output:

Lokale tijd: Do 27 Dec 15:49:29 2018

time.sleep()

Vertraagt de uitvoering van de huidige thread voor het opgegeven aantal seconden.

import time

print("Dit wordt direct geprint.")
time.sleep(2.4)
print("Dit wordt na 2.4 seconden geprint.")

Voor meer details, zie de Python sleep()-documentatie.


time.struct_time-klasse

Functies zoals gmtime() en asctime() retourneren of accepteren een time.struct_time-object, een 9-tuple dat een kalendertijd voorstelt.

time.struct_time(tm_year=2018, tm_mon=12, tm_mday=27, tm_hour=6, tm_min=35, tm_sec=17, tm_wday=3, tm_yday=361, tm_isdst=0)
IndexAttribuutWaarden
0tm_year0000 … 9999
1tm_mon1 … 12
2tm_mday1 … 31
3tm_hour0 … 23
4tm_min0 … 59
5tm_sec0 … 61
6tm_wday0 (Ma) … 6 (Zo)
7tm_yday1 … 366
8tm_isdst0, 1 of -1

Je kunt elementen benaderen via index of attribuutnaam.


time.localtime()

Converteert een POSIX-timestamp naar een struct_time uitgedrukt in de lokale tijdzone. Indien weggelaten, wordt de huidige tijd gebruikt.

import time

result = time.localtime(1545925769)
print("resultaat:", result)
print("\njaar:", result.tm_year)
print("tm_hour:", result.tm_hour)

Typische output:

resultaat: time.struct_time(tm_year=2018, tm_mon=12, tm_mday=27, tm_hour=15, tm_min=49, tm_sec=29, tm_wday=3, tm_yday=361, tm_isdst=0)
jaar: 2018
tm_hour: 15

time.gmtime()

Hetzelfde als localtime() maar retourneert UTC (GMT)-tijd. Weggelaten argument standaard de huidige epoch-waarde.

import time

result = time.gmtime(1545925769)
print("resultaat:", result)
print("\njaar:", result.tm_year)
print("tm_hour:", result.tm_hour)

Typische output:

resultaat: time.struct_time(tm_year=2018, tm_mon=12, tm_mday=28, tm_hour=8, tm_min=44, tm_sec=4, tm_wday=4, tm_yday=362, tm_isdst=0)
jaar: 2018
tm_hour: 8

time.mktime()

Converteert een lokale struct_time (of zijn 9-tuple) terug naar een POSIX-timestamp. Het is effectief de inverse van localtime().

import time

t = (2018, 12, 28, 8, 44, 4, 4, 362, 0)
local_time = time.mktime(t)
print("Lokale tijd:", local_time)

Voorbeeld van de round-trip:

import time

seconds = 1545925769
t = time.localtime(seconds)
print("t1:", t)
s = time.mktime(t)
print("\ns:", s)

Typische output:

t1: time.struct_time(tm_year=2018, tm_mon=12, tm_mday=27, tm_hour=15, tm_min=49, tm_sec=29, tm_wday=3, tm_yday=361, tm_isdst=0)
s: 1545925769.0

time.asctime()

Formatteert een struct_time (of tuple) naar een voor mensen leesbare string.

import time

t = (2018, 12, 28, 8, 44, 4, 4, 362, 0)
result = time.asctime(t)
print("Resultaat:", result)

Typische output:

Resultaat: Vr 28 Dec 08:44:04 2018

time.strftime()

Formatteert een struct_time naar een aangepaste string op basis van formatcodes.

import time

named_tuple = time.localtime()
time_string = time.strftime("%m/%d/%Y, %H:%M:%S", named_tuple)
print(time_string)

Typische output:

12/28/2018, 09:47:41

Veelvoorkomende formatcodes zijn:

  • %Y – vol jaar (bijv. 2018)
  • %m – maand 01–12
  • %d – dag 01–31
  • %H – uur 00–23
  • %M – minuut 00–59
  • %S – seconde 00–61 (schrikkelsecondes)

Voor meer formatcodes, zie de time.strftime()-documentatie.


time.strptime()

Parsed een string volgens een opgegeven formaat en retourneert een struct_time.

import time

time_string = "21 June, 2018"
result = time.strptime(time_string, "%d %B, %Y")
print(result)

Typische output:

time.struct_time(tm_year=2018, tm_mon=6, tm_mday=21, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=172, tm_isdst=-1)

Python

  1. Python Keywords en Identifiers: Gereserveerde woorden en naamconventies onder de knie krijgen
  2. Python Datatypes onder de knie krijgen: Een praktische gids
  3. Python Operators onder de knie krijgen: Een uitgebreide gids
  4. Python Functie-argumenten onder de knie krijgen: Positionele, Keyword en Default Parameters
  5. Python Modules: Aanmaken, Importeren en Geavanceerd Gebruik
  6. Python-dictionaries beheersen: aanmaken, manipuleren en geavanceerde technieken
  7. Python Regular Expressions (re-module) – een praktische gids
  8. Huidige datum en tijd ophalen in Python: een praktische gids
  9. Python: Huidige tijd en tijdzonedata eenvoudig ophalen
  10. Python's time.sleep() onder de knie krijgen: best practices, multithreading en real-world voorbeelden
  11. Python timeit() – Uitvoeringstijd meten met praktische voorbeelden