使用Python 3.7.3和mysql-connector 8.0.18,我的SELECT结果如下:
[['2019-001', datetime.date(2019, 3, 11), 'Services']]
我希望结果看起来像这样:
[['2019-001', '11/03/2019', 'Services']]
代码段:
...
table = 'Customer'
select = "SELECT * FROM %s"
cursor.execute(select % table)
for row in cursor:
append_list = list(row)
import_list.append(append_list)
print(import_list) #import_list is actually a list of lists
...
我无法修改SELECT语句(使用... DATE_FORMAT(Date,'%d /%m /%Y')),因为我不知道何时/是否为DATE会遇到字段,或者当我遍历MySQL数据库中未知数量的表时遇到的字段名称。
我所做的调查显示了两种可能(据我所知):
datetime.date(2011, 1, 3).strftime("%d-%m-%Y")
这似乎不是很优雅,但是如果那是我必须要做的,我需要弄清楚该怎么做。
或者还有另一种Pythonic方式可以完成我想完成的事情?
答案 0 :(得分:0)
您可以使用 strftime("%Y/%m/%d")
来格式化时间戳。例如:
cursor.execute(select % table)
result = cursor.fetchall()
print(result[0][1].strftime("%Y/%m/%d")) # should give you the timestamp in the format you desire