Les données de date récupérées sur le WEB sont une chaîne de caractères (str).
Convertissez la chaîne de caractères en date afin de stocker les données acquises dans la base de données en tant que données de date.
Utilisez la méthode strptime du module datetime.
python
import datetime as dt
Pas de définition
import datetime
datetime.datetime.now()
#Il est nécessaire de décrire le nom du module au début en entier
Avec définition
import datetime
dt.datetime.now()
#Le nom du module au début peut être abrégé
** Comment utiliser strptime ('A', 'B') ** -Match "Chaîne de caractères A" et "Format B".
Exemple 1(0 non rempli)
A:「2019-1-9」
B:「%Y-%m-%d」
dt.datetime.strptime('2019-1-9','%y-%m-%d')
#production
datetime.datetime(2019, 1, 9, 0, 0)
% Y: 4 chiffres dans le calendrier % m: Mois (Le mois de la chaîne de caractères peut être complété avec 0 ou non) % d: Jour (Le mois de la chaîne de caractères peut être complété avec 0 ou non)
Exemple 2(0 rembourré)
A:「19-05-08」
B:「%y-%m-%d」
dt.datetime.strptime('19-05-08','%y-%m-%d')
#production
datetime.datetime(2019, 5, 8, 0, 0)
% y: 2 chiffres (inférieurs) % m,% d: 0 Prend en charge à la fois avec et sans remplissage
Exemple 3(Date)
R: "8 mai 2019"
B:「%Y année%m mois%jour j "
dt.datetime.strptime('8 mai 2019','%Y année%m mois%jour j')
#production
datetime.datetime(2019, 5, 8, 0, 0)
Exemple 4(Correspondance entre les chaînes de caractères et les valeurs numériques)
R: "La date de demain est le 8 mai. L'année est 2019."
B: "La date de demain est%m mois%j jours. L'année est%Y année "
dt.datetime.strptime('La date de demain est le 8 mai. L'année est 2019','La date de demain est%m mois%j jours. L'année est%Y année')
#production
datetime.datetime(2019, 5, 8, 0, 0)
・ Les dates ne sont pas dans l'ordre ・ Spécifiez simplement quel numéro sera la date
Exemple 5(variable)
A:「past」:'2019/3/23'
B:「%Y/%m/%d」
past= '2019/3/23'
dt.datetime.strptime(past,'%Y/%m/%d')
#production
datetime.datetime(2019, 3, 23, 0, 0)
Erreur lors de la citation des variables ValueError: time data 'past' does not match format '%Y/%m/%d'
Exemple 6(Temps,Minutes,Y compris les secondes)
A:「future」:'23 mars 2030 5:21:42 123456 microsecondes'
B:「%Y année%m mois%jour j%H heure%M minutes%S secondes%f microsecondes "
past= '2019/3/23'
dt.datetime.strptime(future, '%Y année%m mois%jour j%H heure%M minutes%S secondes%f microsecondes')
#production
datetime.datetime(2030, 3, 23, 5, 21, 42, 123456)
% H: Heure (notation 24 heures) % M: minutes % S: secondes % f: microsecondes
code
dt.datetime.now()
#production
# datetime.datetime(2020, 3, 23, 0, 18, 1, 735003)
En premier lieu, c'était une erreur de penser que "datetime.datetime.now ()" était divisé en trois parties, "①datetime", "②.datetime" et "③now ()".
Correctement, il est divisé en deux parties, "(1) datetime.datetime" et "(2) now ()".
La syntaxe pour utiliser la méthode est ʻobject .
method`, donc cela ressemble à ceci:
ʻObject: ① datetime.datetime
Méthode`: ② maintenant ()
Mettez une entité dans l'objet.
** <Exemple d'entité> ** -Variable attribuée (par exemple a = 3) ・ Instance (classe incarnée)
→ datetime.datetime est une instance
C'est difficile à comprendre si vous regardez simplement "datetime.datetime", mais il existe d'autres types.
datetime.date
: date
datetime.time
: heure
datetime.timedelta
: Différence
datetime.tzinfo
: informations sur le fuseau horaire
Tel
▶「datetime.datetime.now()」
datetime.datetime
est une collection de fonctions liées à" date et heure ".
La méthode now ()
appelle la fonction now () définie dans datetime.datetime
.
▶「datetime.date.now()」
** Erreur **.
datetime.date
est une collection de fonctions liées au" temps ". La fonction «now ()» n'est pas définie ici.
▶「datetime.time.today()」
Vous pouvez utiliser ceci.
Une fonction appelée today ()
est définie dans la classe de datetime.date
.
--Plusieurs classes sont définies dans le module datetime. --Spécifiez la classe avec les données que vous souhaitez gérer (date, heure, les deux? Etc.)
datetime.time.today() datetime.datetime.today()