Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Python

Python - Date et heure

Page PrécédentePage Suivante

Un programme Python peut gérer la date et l'heure de plusieurs manières. La conversion entre les formats de date est une corvée courante pour les ordinateurs. Les modules de temps et de calendrier de Python aident à suivre les dates et les heures.

Qu'est-ce que la tique ?

Les intervalles de temps sont des nombres à virgule flottante en unités de secondes. Les instants particuliers dans le temps sont exprimés en secondes depuis 00:00:00 h le 1er janvier 1970 (époque).

Il y a un moment populaire module disponible en Python qui fournit des fonctions pour travailler avec les temps et pour convertir entre les représentations. La fonction time.time() renvoie l'heure système actuelle en ticks depuis 00:00:00 h le 1er janvier 1970 (époque).

Exemple

Démo en direct
#!/usr/bin/python
import time;  # This is required to include time module.

ticks = time.time()
print "Number of ticks since 12:00am, January 1, 1970:", ticks

Cela produirait un résultat comme suit −

Number of ticks since 12:00am, January 1, 1970: 7186862.73399

L'arithmétique des dates est facile à faire avec les ticks. Cependant, les dates antérieures à l'époque ne peuvent pas être représentées sous cette forme. Les dates dans un futur lointain ne peuvent pas non plus être représentées de cette façon - le point limite est quelque part en 2038 pour UNIX et Windows.

Qu'est-ce que TimeTuple ?

De nombreuses fonctions temporelles de Python gèrent le temps comme un tuple de 9 nombres, comme indiqué ci-dessous −

Index Champ Valeurs
0 Année à 4 chiffres 2008
1 Mois 1 à 12
2 Jour 1 à 31
3 Heure 0 à 23
4 Minute 0 à 59
5 Deuxième 0 à 61 (60 ou 61 sont des secondes intercalaires)
6 Jour de la semaine 0 à 6 (0 est lundi)
7 Jour de l'année 1 à 366 (jour julien)
8 Heure d'été -1, 0, 1, -1 signifie que la bibliothèque détermine l'heure d'été

Le tuple ci-dessus est équivalent à struct_time structure. Cette structure a les attributs suivants −

Index Attributs Valeurs
0 tm_year 2008
1 tm_mon 1 à 12
2 tm_mday 1 à 31
3 tm_hour 0 à 23
4 tm_min 0 à 59
5 tm_sec 0 à 61 (60 ou 61 sont des secondes intercalaires)
6 tm_wday 0 à 6 (0 est lundi)
7 tm_yday 1 à 366 (jour julien)
8 tm_isdst -1, 0, 1, -1 signifie que la bibliothèque détermine l'heure d'été

Obtenir l'heure actuelle

Pour traduire un instant de temps à partir de secondes depuis l'époque valeur à virgule flottante dans un tuple temporel, passez la valeur à virgule flottante à une fonction (par exemple, localtime) qui renvoie un tuple temporel avec les neuf éléments valides.

Démo en direct
#!/usr/bin/python
import time;

localtime = time.localtime(time.time())
print "Local current time :", localtime

Cela produirait le résultat suivant, qui pourrait être formaté sous n'importe quelle autre forme présentable −

Local current time : time.struct_time(tm_year=2013, tm_mon=7, 
tm_mday=17, tm_hour=21, tm_min=26, tm_sec=3, tm_wday=2, tm_yday=198, tm_isdst=0)

Obtenir l'heure formatée

Vous pouvez formater à tout moment selon vos besoins, mais une méthode simple pour obtenir l'heure dans un format lisible est asctime() −

Démo en direct
#!/usr/bin/python
import time;

localtime = time.asctime( time.localtime(time.time()) )
print "Local current time :", localtime

Cela produirait le résultat suivant −

Local current time : Tue Jan 13 10:17:09 2009

Obtenir un calendrier pour un mois

Le module de calendrier offre un large éventail de méthodes pour jouer avec les calendriers annuels et mensuels. Ici, on imprime un calendrier pour un mois donné ( Jan 2008 ) −

Démo en direct
#!/usr/bin/python
import calendar

cal = calendar.month(2008, 1)
print "Here is the calendar:"
print cal

Cela produirait le résultat suivant −

Here is the calendar:
   January 2008
Mo Tu We Th Fr Sa Su
    1  2  3  4  5  6
 7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

Le temps Module

Il y a un moment populaire module disponible en Python qui fournit des fonctions pour travailler avec les temps et pour convertir entre les représentations. Voici la liste de toutes les méthodes disponibles −

Sr.No. Fonction avec Description
1 heure.altzone

Décalage du fuseau horaire DST local, en secondes à l'ouest de UTC, s'il est défini. Ceci est négatif si le fuseau horaire DST local est à l'est de UTC (comme en Europe occidentale, y compris le Royaume-Uni). N'utilisez ceci que si la lumière du jour est différente de zéro.

2 time.asctime([tupletime])

Accepte un tuple temporel et renvoie une chaîne lisible de 24 caractères, telle que "Tue Dec 11 18:07:14 2008".

3 heure.horloge( )

Renvoie le temps CPU actuel sous la forme d'un nombre à virgule flottante de secondes. Pour mesurer les coûts de calcul des différentes approches, la valeur de time.clock est plus utile que celle de time.time().

4 time.ctime([secs])

Comme asctime(localtime(secs)) et sans arguments est comme asctime( )

5 time.gmtime([secs])

Accepte un instant exprimé en secondes depuis l'époque et renvoie un tuple temporel t avec l'heure UTC. Remarque :t.tm_isdst vaut toujours 0

6 time.localtime([secs])

Accepte un instant exprimé en secondes depuis l'époque et renvoie un tuple temporel t avec l'heure locale (t.tm_isdst vaut 0 ou 1, selon que l'heure d'été s'applique aux secondes instantanées selon les règles locales).

7 time.mktime(tupletime)

Accepte un instant exprimé sous la forme d'un tuple temporel en heure locale et renvoie une valeur à virgule flottante avec l'instant exprimé en secondes depuis l'époque.

8 time.sleep(secs)

Suspend le thread appelant pendant secondes secondes.

9 time.strftime(fmt[,tupletime])

Accepte un instant exprimé sous la forme d'un tuple temporel en heure locale et renvoie une chaîne représentant l'instant tel que spécifié par la chaîne fmt.

10 time.strptime(str,fmt='%a %b %d %H:%M:%S %Y')

Analyse str selon la chaîne de format fmt et renvoie l'instant au format time-tuple.

11 heure.heure( )

Renvoie l'instant actuel, un nombre à virgule flottante de secondes depuis l'époque.

12 heure.tzset()

Réinitialise les règles de conversion de temps utilisées par les routines de la bibliothèque. La variable d'environnement TZ spécifie comment cela est fait.

Passons brièvement en revue les fonctions −

Les deux attributs importants suivants sont disponibles avec le module de temps −

heure.fuseau horaire

L'attribut time.timezone est le décalage en secondes du fuseau horaire local (sans l'heure d'été) par rapport à UTC (>0 aux Amériques ; <=0 dans la plupart des pays d'Europe, d'Asie et d'Afrique).

time.tzname

L'attribut time.tzname est une paire de chaînes dépendantes des paramètres régionaux, qui sont les noms du fuseau horaire local sans et avec DST, respectivement.

Sr.No. Attribut avec description
1
2

Le calendrier Module

Le module de calendrier fournit des fonctions liées au calendrier, y compris des fonctions pour imprimer un calendrier texte pour un mois ou une année donné.

Par défaut, le calendrier prend le lundi comme premier jour de la semaine et le dimanche comme dernier. Pour changer cela, appelez la fonction calendar.setfirstweekday().

Voici une liste des fonctions disponibles avec le calendrier modules −

calendar.calendar(année,w=2,l=1,c=6)

Renvoie une chaîne multiligne avec un calendrier pour l'année formatée en trois colonnes séparées par des espaces c. w est la largeur en caractères de chaque date ; chaque ligne a une longueur de 21*w+18+2*c. l est le nombre de lignes pour chaque semaine.

calendar.firstweekday( )

Renvoie le paramètre actuel pour le jour de la semaine qui commence chaque semaine. Par défaut, lors de la première importation du calendrier, il s'agit de 0, ce qui signifie lundi.

calendar.isleap(année)

Renvoie True si l'année est une année bissextile ; sinon, Faux.

calendar.leapdays(y1,y2)

Renvoie le nombre total de jours bissextiles dans les années comprises dans la plage (y1,y2).

calendar.month(année,mois,w=2,l=1)

Renvoie une chaîne multiligne avec un calendrier pour le mois mois de l'année année, une ligne par semaine plus deux lignes d'en-tête. w est la largeur en caractères de chaque date ; chaque ligne a une longueur de 7*w+6. l est le nombre de lignes pour chaque semaine.

calendar.monthcalendar(année,mois)

Renvoie une liste de listes d'entiers. Chaque sous-liste correspond à une semaine. Les jours en dehors du mois mois de l'année année sont définis sur 0 ; les jours du mois sont définis sur leur jour du mois, 1 et plus.

calendar.monthrange(année,mois)

Renvoie deux entiers. Le premier est le code du jour de la semaine pour le premier jour du mois mois de l'année année; le second est le nombre de jours dans le mois. Les codes des jours de la semaine vont de 0 (lundi) à 6 (dimanche) ; les numéros de mois vont de 1 à 12.

calendar.prcal(année,w=2,l=1,c=6)

Comme print calendar.calendar(year,w,l,c).

calendar.prmonth(année,mois,w=2,l=1)

Comme print calendar.month(year,month,w,l).

calendar.setfirstweekday(jour de la semaine)

Définit le premier jour de chaque semaine sur le code du jour de la semaine jour de la semaine. Les codes des jours de la semaine vont de 0 (lundi) à 6 (dimanche).

calendar.timegm(tupletime)

L'inverse de time.gmtime :accepte un instant sous la forme d'un tuple temporel et renvoie le même instant sous la forme d'un nombre à virgule flottante de secondes depuis l'époque.

calendar.weekday(année,mois,jour)

Renvoie le code du jour de la semaine pour la date donnée. Les codes des jours de la semaine vont de 0 (lundi) à 6 (dimanche) ; les numéros de mois vont de 1 (janvier) à 12 (décembre).

Sr.No. Fonction avec Description
1
2
3
4
5
6
7
8
9
10
11
12

Autres modules et fonctions

Si vous êtes intéressé, vous trouverez ici une liste d'autres modules et fonctions importants pour jouer avec la date et l'heure en Python −


Python

  1. Types de données Python
  2. Opérateurs Python
  3. Instruction de passe Python
  4. Arguments de la fonction Python
  5. Dictionnaire Python
  6. Date-heure Python
  7. Comment obtenir la date et l'heure actuelles en Python ?
  8. Python Obtenir l'heure actuelle
  9. Module de temps Python