Maison >développement back-end >Tutoriel Python >Hyper complet ! Six façons d'obtenir le 'jour de la semaine' pour une certaine date en Python !
Lors de l'analyse de données en Python, le regroupement et la synthèse par date sont également nécessaires, par exemple, pour trouver le modèle cyclique des ventes.
Ainsi, avant d'utiliser Python pour les statistiques de données, vous devez ajouter une étape supplémentaire : obtenir le jour de la semaine à partir de la date spécifiée. Par exemple, le 22 février 2022 se trouve être le 22e mardi du premier mois lunaire, ce qui signifie que de nombreuses personnes s'inscrivent pour se marier ce jour-là. Cet article prend le 22/02/2022 comme exemple pour démontrer 6 façons d'obtenir le « jour de la semaine » pour une date spécifiée en Python !
Le module datetime est une bibliothèque intégrée Python, aucune installation pip n'est requise En plus d'afficher la date et l'heure, il peut également effectuer des calculs et un formatage de date et d'heure.
La méthode weekday() du module datetime peut être utilisée pour récupérer le jour de la semaine, et le résultat renvoie un entier compris entre 0 et 6, utilisé pour représenter "lundi" à "dimanche".
Entrez la commande suivante dans l'environnement interactif :
from datetime import datetime datetime.date(2022, 2, 22).weekday()
Sortie :
1
Dans le code, le module datetime convertira d'abord la date composée de l'année, du mois et du jour en une date datetime. Ensuite, la méthode weekday() obtient "2022-02-22", quel jour est mardi.
Mais selon nos habitudes domestiques, nous ne pouvons pas sortir directement 1. Nous pouvons donc d'abord personnaliser une liste contenant les "jours de la semaine" chinois, puis renvoyer un jour de la semaine chinois via l'indexation.
Entrez la commande suivante dans l'environnement interactif :
week_list = ["星期一","星期二","星期三","星期四","星期五","星期六","星期日"] week_list[datetime.date(2022, 2, 22).weekday()]
Sortie :
'星期二'
Le résultat est mardi directement. La méthode
isoweekday() fonctionne de la même manière que la méthode weekday() précédente. La plus grande différence est qu'elle renvoie un entier compris entre 1 et 7, utilisé pour représenter "lundi" à "dimanche".
Entrez la commande suivante dans l'environnement interactif :
import datetime datetime.date(2022, 2, 22).isoweekday()
Sortie :
2
Le résultat de sortie cette fois est directement "semaine 2".
Si vous souhaitez afficher directement le nom de la semaine en anglais de la date, vous pouvez aussi bien essayer la méthode strftime().
Utilisez la méthode strftime() pour afficher les objets datetime sous forme de chaînes. Nous sommes en fait très familiers avec la conversion du format de date en format chaîne, tel que strftime('%b-%m-%y %H:%M:%S'). jour de la semaine.
Entrez la commande suivante dans l'environnement interactif :
import datetime datetime.date(2022, 2, 22).strftime("%A")
Sortie :
'Tuesday'
Si vous remplacez %A dans le code par %a, la sortie est l'abréviation du jour de la semaine.
datetime.date(2022, 2, 22).strftime("%a")
Sortie :
'Tue'
Le module de calendrier en Python est également une bibliothèque intégrée, qui nous fournit de nombreuses méthodes pour traiter les calendriers. Il est très pratique à utiliser. Nous pouvons l'utiliser pour créer des calendriers/hebdomadaires. calendriers, etc De même, il fournit également les méthodes weekday() et day_name() pour interroger le jour de la semaine pour une date spécifiée.
Entrez la commande suivante dans l'environnement interactif :
import calendar calendar.weekday(2022, 2, 22)
Sortie :
1
C'est exactement la même chose que la méthode weekday() du module datetime dans la première méthode ci-dessus.
Si vous souhaitez afficher directement le nom de la semaine en anglais de la date, le module de calendrier dispose également d'une méthode pour y parvenir.
import datetime import calendar date_week = datetime.date(2022, 2, 22).weekday() calendar.day_name[date_week]
Sortie :
'Tuesday'
Le module datetime présente également certaines limitations, telles que la gestion des problèmes de fuseau horaire, etc. Le module pendule est une bibliothèque open source tierce qui peut résoudre tous les problèmes du module datetime intégré.
https://www.php.cn/link/ebc03fa648c2cd7da9d63b9ed835664e
Bien sûr, il dispose également d'une méthode pour afficher le jour de la semaine pour la date spécifiée.
Entrez la commande suivante dans l'environnement interactif :
import pendulum pendulum.parse('2022-02-22').day_of_week
Sortie :
2
Le résultat de la sortie est directement "Jour de la semaine 2".
Enfin, enfin, je veux parler de l'une de mes méthodes les plus couramment utilisées. Étant donné que Xiaowu traite généralement les données dans Pandas, la méthode dans Pandas sera certainement prioritaire lors de la génération de la colonne « semaine ».
Series.dt peut être utilisé pour accéder aux valeurs d'une série sous forme de type datetime et renvoyer plusieurs propriétés. La fonction Series.dt.day_name() renvoie le nom de la date avec le DateTimeIndex des paramètres régionaux spécifiés.
Entrez la commande suivante dans l'environnement interactif :
import pandas as pd from datetime import datetime df = pd.DataFrame({ "name": ["张三", "李四", "朱五"], "date": [datetime(2022, 2, 21), datetime(2022, 2, 22), datetime(2022, 2, 23)]}) df
Le résultat est le suivant :
df["week_num1"] = df["date"].dt.dayofweek df["week_num2"] = df["date"].dt.weekday df["week_name"] = df["date"].dt.day_name() df
Le résultat est le suivant :
Dans l'article d'aujourd'hui, nous avons présenté un total des éléments spécifiés. 6 façons d'obtenir le jour de la semaine à partir d'une date.
J'espère que mon partage vous sera utile. Amis qui voient la fin de l'article, merci de mettre un j'aime dans le coin inférieur droit avant de partir~
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!