from datetime import datetime
上記のコードの最初の datetime は datetime.py を指し、2 つ目の datetime は datetime クラスを指します。
from datetime import datetime
DATE_Y_FMT = '% Y' #年を取得
div_data['year'] = div_data['EndDate'].map(lambda x.strftime(x, DATE_Y_FMT))
上記のコードの datetime は datetime クラスを指します。
from datetime import datetime
d1 = datetime.date(2018,10,24)
TypeError: descriptor 'date' requires a 'datetime.datetime' object but received a 'int'
以前のコードと同様に、ここでの datetimes は datetime クラスであり、datetime.py ではありません。datetime クラスは同じレベルの date クラスを呼び出すことは明らかに間違っています。(datetime.py には date クラス、time クラス、datetime クラスなどがあります)。では、どのように修正すればよいのでしょうか?
修正方法 1: date クラスをロードした後、直接呼び出す
from datetime import date
d2 = date(2018,10,24)
修正方法 2: datetime.py 全体をロードし、その後 datetime.date を呼び出す
import datetime
d3 = datetime.date(2018,10,24)
同様の問題が stackflow でも議論されており、以下のリンクを参考にしてください:/questions/5619489/troubleshooting-descriptor-date-requires-a-datetime-datetime-object-but-rec
最後に、github 上で日付と時間を取得し、日付と時間をタイムスタンプに変換するツールセットを共有します。