Hoy, siendo 2016, creo que la solución más limpia la proporciona pandas Timestamp:
from datetime import date
import pandas as pd
d = date.today()
pd.Timestamp(d)
La marca de tiempo es el equivalente de pandas de fecha y hora y es intercambiable en la mayoría de los casos. Cheque:
from datetime import datetime
isinstance(pd.Timestamp(d), datetime)
Pero en caso de que realmente desee una fecha y hora de vainilla, aún puede hacer:
pd.Timestamp(d).to_datetime()
Las marcas de tiempo son mucho más poderosas que las fechas, entre otras cuando se trata de zonas horarias. En realidad, las marcas de tiempo son tan poderosas que es una pena que estén tan mal documentadas ...
.datetime()
método; Lo tonto es que no tienen ese método.