Explication détaillée du module time en Python
En programmation Python, nous avons souvent besoin de traiter et d'exploiter le temps. La bibliothèque standard de Python fournit un module time pour gérer les opérations liées au temps. Cet article présentera le module de temps en détail.
Le module time fait partie de la bibliothèque standard Python et fournit quelques fonctions et classes pour le temps de traitement. Ce module comprend principalement les aspects suivants :
Le module time utilise la fonction time() pour obtenir l'horodatage de l'heure actuelle. Voici un exemple simple :
import time now = time.time() print("当前时间戳:", now)
Sortie :
当前时间戳: 1563431484.0177832
Afin de nous faciliter la visualisation de l'heure, le module time fournit également une fonction asctime() pour convertir l'horodatage en une chaîne représentant l'heure locale. Voici un exemple :
import time now = time.time() localtime = time.localtime(now) asctime = time.asctime(localtime) print("当前时间:", asctime)
Sortie :
当前时间: Mon Jul 18 14:04:44 2019
De plus, la fonction sleep() peut mettre le programme en pause pendant une durée spécifiée (en secondes) et laisser le programme attendre un certain temps avant de s'exécuter. Voici un exemple d'utilisation de la fonction sleep() :
import time print("程序开始执行...") time.sleep(5) print("程序执行结束。")
Lors de l'exécution du code ci-dessus, le programme fera une pause pendant 5 secondes, puis affichera "L'exécution du programme se termine
En programmation Python." , nous avons souvent besoin de convertir les horodatages en un format d'heure lisible par l'homme, ou vice versa. Le module time fournit deux fonctions principales : strftime() et strptime(), qui sont utilisées pour la conversion du format d'heure.
a. La fonction strftime()
strftime() est une fonction utilisée pour formater l'heure dans une chaîne. Voici un exemple :
import time t = (2019, 7, 18, 14, 30, 0, 0, 0, 0) localtime = time.mktime(t) asctime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(localtime)) print("时间格式化字符串:", asctime)
Sortie :
时间格式化字符串: 2019-07-18 14:30:00
Dans le code ci-dessus, nous convertissons d'abord l'heure t en une heure locale d'horodatage, puis utilisons la fonction strftime() pour formater l'heure locale sous la forme de chaîne requise.
Les paramètres de la fonction strftime() incluent la chaîne de format et le tuple temporel, où la chaîne de format est un modèle pour convertir le tuple temporel en chaîne. Les caractères de formatage couramment utilisés sont les suivants :
Caractères de formatage | signifiant |
---|---|
%a | abréviation du jour de la semaine |
%A | nom complet du jour de la semaine |
%b | abréviation du mois |
%B | nom complet du mois |
%c | représentation de l'heure locale correspondante |
%d | le jour du mois |
% H | Représente le nombre d'heures au format 24 heures |
%I | Représente le nombre d'heures au format 12 heures |
%j | Le jour de l'année |
%m | Le mois représenté par le chiffre ( 01~12) |
%M | minutes |
%p | AM ou PM |
%S | secondes |
%U | semaine de l'année, le dimanche est le début de la semaine |
%w | Jour de la semaine, 0 (dimanche) ~ 6 (samedi) |
%W | Le nombre de semaines dans année, lundi est le début de la semaine |
%x | Représentation locale de la date correspondante |
% | Représentation de l'année complète (0000~9999) |
%z | Le nombre d'heures de différence par rapport à Heure UTC |
%Z | Le nom du fuseau horaire |
%% | Le caractère "%" lui-même |
b. strptime() strptime()函数则是将字符串转换为时间类型。以下是一个示例: import time str_time = "2019-07-18 14:30:00" struct_time = time.strptime(str_time, "%Y-%m-%d %H:%M:%S") print("转换后的时间元组:", struct_time) Copier après la connexion 输出: 转换后的时间元组: time.struct_time(tm_year=2019, tm_mon=7, tm_mday=18, tm_hour=14, tm_min=30, tm_sec=0, tm_wday=3, tm_yday=199, tm_isdst=-1) Copier après la connexion 在上述代码中,我们使用strptime()函数将格式为"%Y-%m-%d %H:%M:%S"的字符串str_time转换为时间元组。
在Python编程中,我们也经常需要进行时间的计算,如计算两个时间之间的差值、或将一个时间加上或减去一段时间后得到一个新的时间。time模块中提供了很多函数来实现这些计算操作。 a. 时间差值计算 计算两个时间之间的差值可以使用time模块中的mktime()函数,该函数将时间元组转换为时间戳,我们可以通过计算两个时间的时间戳之差来得到它们之间的时间差。以下是一个示例: import time t1 = (2019, 7, 18, 14, 30, 0, 0, 0, 0) t2 = (2019, 7, 19, 14, 30, 0, 0, 0, 0) t1_stamp = time.mktime(t1) t2_stamp = time.mktime(t2) diff_secs = int(t2_stamp - t1_stamp) print("两个时间之间相差的秒数:", diff_secs) Copier après la connexion 输出: 两个时间之间相差的秒数: 86400 Copier après la connexion 在上述代码中,我们首先将两个时间t1、t2转换为时间戳t1_stamp、t2_stamp,接着计算两个时间戳之差得到时间差值(单位为秒)。 b. 时间加减计算 时间加减计算可以使用time模块中的mktime()函数和localtime()函数。我们可以将一个时间元组转换为时间戳,然后加上一段时间的秒数,再将结果转换为时间元组即可得到一个新的时间。以下是一个示例: import time t1 = (2019, 7, 18, 14, 30, 0, 0, 0, 0) t1_stamp = time.mktime(t1) days = 1 hours = 3 minutes = 30 seconds = 0 add_secs = days * 86400 + hours * 3600 + minutes * 60 + seconds new_stamp = t1_stamp + add_secs new_time = time.localtime(new_stamp) new_strftime = time.strftime("%Y-%m-%d %H:%M:%S", new_time) print("加上一段时间后的新时间:", new_strftime) Copier après la connexion 输出: 加上一段时间后的新时间: 2019-07-19 18:00:00 Copier après la connexion 在上述代码中,我们首先将时间t1转换为时间戳t1_stamp,然后定义了要加的时间间隔,接着将时间间隔的总秒数计算出来,将其加上t1_stamp得到新的时间戳new_stamp,最后使用localtime()函数和strftime()函数将新的时间转换为字符串表示。
time模块中定义了很多函数用于对时间进行各种操作。 a. 时间比较 time模块中的函数cmp()、min()和max()可以用来比较时间的大小。 b. 时间运算 time模块中的函数add()、sub()可以用来对时间进行加减运算。 c. 时间格式化 time模块中还提供了一个函数asctime(),用于将时间元组转换为表示当地时间的字符串。 以下是一个示例: import time t = (2019, 7, 18, 14, 30, 0, 0, 0, 0) asctime = time.asctime(t) print("时间格式化字符串:", asctime) Copier après la connexion 输出: 时间格式化字符串: Thu Jul 18 14:30:00 2019 Copier après la connexion 以上是time模块的基本使用方式和一些常用函数的介绍。通过学习并掌握time模块的使用方法,我们可以更加方便地进行Python编程中的时间操作与计算。 Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!
Étiquettes associées:
source:php.cn
Article précédent:Explication détaillée de la bibliothèque GUI tkinter en Python
Article suivant:Explication détaillée de seaborn, une bibliothèque de visualisation de données en Python
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Derniers numéros
Réglez le bas à 100 % de sa propre hauteur
Je souhaite configurer un élément de manière à ce qu'il soit masqué de la vue de la page e...
Depuis 2024-04-04 22:41:16
0
1
1438
Rubriques connexes
Plus>
|