Ik gebruik strptimeom een datumreeks te converteren in een datetime
. Volgens de gelinkte pagina zou een opmaak als deze moeten werken:
>>> # Using datetime.strptime()
>>> dt = datetime.strptime("21/11/06 16:30", "%d/%m/%y %H:%M")
Mijn code is:
import datetime
dtDate = datetime.strptime(sDate,"%m/%d/%Y")
waar sDate = "07/27/2012"
. (Ik begrijp van dezelfde pagina dat %Y
“Jaar met eeuw als decimaal getal.”is)
Ik heb geprobeerd de werkelijke waarde van sDate in de code te zetten:
dtDate = datetime.strptime("07/27/2012","%m/%d/%Y")
maar dit werkt niet. De fout die ik krijg is:
AttributeError: ‘module’ object heeft geen attribuut ‘strptime’
Wat doe ik verkeerd?
Antwoord 1, autoriteit 100%
Je zou datetime.datetime.strptime
moeten gebruiken. Merk op dat zeer oude versies van Python (2.4 en ouder) geen datetime.datetime.strptime
hebben; gebruik in dat geval time.strptime
.
Antwoord 2, autoriteit 37%
Je importeert de module datetime, die geen functie strptime
heeft.
Die module heeftwel een datetime
object met die methode:
import datetime
dtDate = datetime.datetime.strptime(sDate, "%m/%d/%Y")
Als alternatief kunt u het object datetime
uit de module importeren:
from datetime import datetime
dtDate = datetime.strptime(sDate, "%m/%d/%Y")
Merk op dat de methode strptime
is toegevoegd in python 2.5; als je een oudere versie gebruikt, gebruik dan de volgende code:
import datetime, time
dtDate = datetime.datetime(*time.strptime(sDate, "%m/%d/%Y")[:6])
Antwoord 3, autoriteit 9%
Omdat datetime
de module is. De klas is datetime.datetime
.
import datetime
dtDate = datetime.datetime.strptime(sDate,"%m/%d/%Y")
Antwoord 4
U moet de statische methode strftime
gebruiken uit de klasse datetime
uit de module datetime
. Probeer:
import datetime
dtDate = datetime.datetime.strptime("07/27/2012", "%m/%d/%Y")
Antwoord 5
U kunt ook het volgende doen om datetime te importeren
from datetime import datetime as dt
dt.strptime(date, '%Y-%m-%d')
Antwoord 6
Als je in de map met je project een bestand hebt gemaakt met de naam “datetime.py”