Python tidsmodul (med exempel)

I den här artikeln kommer vi att utforska tidsmodulen i detalj. Vi lär oss att använda olika tidsrelaterade funktioner som definierats i tidsmodulen med hjälp av exempel.

Python har en modul som heter för timeatt hantera tidsrelaterade uppgifter. För att använda funktioner som definierats i modulen måste vi importera modulen först. Här är hur:

 import time

Här är vanliga tidsrelaterade funktioner.

Python time.time ()

De time()returnerar antalet sekunder gått sedan epok.

För Unix-system, January 1, 1970, 00:00:00vid UTC är epok (den punkt där tiden börjar).

 import time seconds = time.time() print("Seconds since epoch =", seconds) 

Python time.ctime ()

Den time.ctime()funktionen tar bara några sekunder gått sedan epoken som ett argument och returnerar en sträng som representerar lokal tid.

 import time # seconds passed since epoch seconds = 1545925769.9618232 local_time = time.ctime(seconds) print("Local time:", local_time) 

Om du kör programmet blir resultatet ungefär som:

 Lokal tid: tor 27 dec 15:49:29 2018

Python time.sleep ()

Den sleep()funktions i viloläge (förseningar) exekveringen av den aktuella tråden för det givna antalet sekunder.

 import time print("This is printed immediately.") time.sleep(2.4) print("This is printed after 2.4 seconds.") 

För att lära dig mer, besök: Python sleep ().

Innan vi pratar om andra tidsrelaterade funktioner, låt oss utforska time.struct_timeklassen i korthet.

time.struct_time Class

Flera funktioner i timemodulen, såsom gmtime(), asctime()etc. ta antingen time.struct_timeobjektet som ett argument eller lämna tillbaka den.

Här är ett exempel på time.struct_timeobjekt.

 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) 
Index Attribut Värden
0 tm_year 0000,…., 2018,…, 9999
1 tm_mon 1, 2,…, 12
2 tm_mday 1, 2,…, 31
3 tm_hour 0, 1, …, 23
4 tm_min 0, 1,…, 59
5 tm_sec 0, 1,…, 61
6 tm_wday 0, 1,…, 6; Måndag är 0
7 tm_yday 1, 2,…, 366
8 tm_isdst 0, 1 eller -1

time.struct_timeObjektets värden (element) är tillgängliga med både index och attribut.

Python time.localtime ()

Den localtime()funktionen tar antalet sekunder gått sedan epoken som ett argument och returnerar struct_timei lokal tid .

 import time result = time.localtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 

När du kör programmet blir resultatet ungefär som:

 resultat: 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) år: 2018 tm_hour: 15 

Om inget argument eller Noneskickas till localtime()används värdet som returneras av time().

Python time.gmtime ()

The gmtime() function takes the number of seconds passed since epoch as an argument and returns struct_time in UTC.

 import time result = time.gmtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 

When you run the program, the output will be:

 result = 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) year = 2018 tm_hour = 8 

If no argument or None is passed to gmtime(), the value returned by time() is used.

Python time.mktime()

The mktime() function takes struct_time (or a tuple containing 9 elements corresponding to struct_time) as an argument and returns the seconds passed since epoch in local time. Basically, it's the inverse function of localtime().

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

The example below shows how mktime() and localtime() are related.

 import time seconds = 1545925769 # returns struct_time t = time.localtime(seconds) print("t1: ", t) # returns seconds from struct_time s = time.mktime(t) print("s:", seconds) 

When you run the program, the output will be something like:

 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 

Python time.asctime()

The asctime() function takes struct_time (or a tuple containing 9 elements corresponding to struct_time) as an argument and returns a string representing it. Here's an example:

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

When you run the program, the output will be:

 Result: Fri Dec 28 08:44:04 2018

Python time.strftime()

The strftime() function takes struct_time (or tuple corresponding to it) as an argument and returns a string representing it based on the format code used. For example,

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

When you run the program, the output will be something like:

 12/28/2018, 09:47:41 

Here, %Y, %m, %d, %H etc. are format codes.

  • %Y - year (0001,… , 2018, 2019,… , 9999)
  • %m - månad (01, 02,…, 11, 12)
  • %d - dag (01, 02,…, 30, 31)
  • %H - timme (00, 01,…, 22, 23
  • %M - minuter (00, 01,…, 58, 59)
  • %S - andra (00, 01,…, 58, 61)

För att lära dig mer, besök: time.strftime ().

Python time.strptime ()

Den strptime()funktionen tolkar en sträng som representerar tid och återvänder struct_time.

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

När du kör programmet blir resultatet:

 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) 

Intressanta artiklar...