python datetime对象转成字符串类型str

发布时间 2023-11-14 16:07:23作者: 守护麦田
ptrada = dbutil.select(f"select trade_date from ...")
print(type(ptrada),ptrada)       # <class 'list'> [(datetime.datetime(2023, 8, 1, 0, 0),)]
一般从数据库中取到的日期 都是 datetime对象 数据结构
pretra = ptrada[0][0]       
print(type(pretra ), pretra)        # <class 'datetime.datetime'> 2023-08-01 00:00:00
#  获取到的时间字段 基本是datetime 对象数据结构, 但python 代码中基本上是使用 字符串类型 的时间,如:“2023-11-07 ”
解决: 需要将datetime 对象 类型的数据结构 转换成字符串类型  数据结构
pretradeday = pretra.strftime("%Y-%m-%d")
print('上一交易日:',type(pretradeday),pretradeday)          # 上一交易日: <class 'str'> 2023-08-01
其他地方再次使用,
stockWeightY = dbutil.select(f"select * FROM .. where ..  AND xx = to_date('{pretradeday}','yyyy-MM-dd')")