Python 如何将整数、Decimal()和datetime.datetime()连接到列表中?
我使用pyodbc从SQL数据库返回行,我可以连接并获取所有行。但现在我不知道如何处理返回的数据。我想将返回列表中的所有值合并成一个字符串,然后写入文件。但我不确定如何处理列表中的多种数据类型 以下是指向列表的基本代码:Python 如何将整数、Decimal()和datetime.datetime()连接到列表中?,python,pyodbc,python-datetime,Python,Pyodbc,Python Datetime,我使用pyodbc从SQL数据库返回行,我可以连接并获取所有行。但现在我不知道如何处理返回的数据。我想将返回列表中的所有值合并成一个字符串,然后写入文件。但我不确定如何处理列表中的多种数据类型 以下是指向列表的基本代码: key = "03001001" cursor.execute('''select * from table_name where key='{}' '''.format(key)) rows = cursor.fetchall() for x in rows: pri
key = "03001001"
cursor.execute('''select * from table_name where key='{}' '''.format(key))
rows = cursor.fetchall()
for x in rows:
print(x)
当Iprint(x)
时,它返回以下行:
('03001001', 2, datetime.datetime(2014, 11, 13, 4, 30), 0, Decimal('-0.1221'), 5, 0, 0, 0, datetime.datetime(2014, 11, 13, 14, 30), datetime.datetime(2014, 11, 13, 4, 30, 12), 0)
我希望它只是一个标签分隔的字符串
print('\t'.join(map(repr, x)))
将导致
'03001001' 2 datetime.datetime(2014, 11, 13, 4, 30) 0 Decimal('-0.1221')5 0 0 0 datetime.datetime(2014, 11, 13, 14, 30) datetime.datetime(2014, 11, 13, 4, 30, 12) 0
如果您想要一个可读的日期和十进制条目,请使用str
而不是repr
(如Matti John的答案):
将打印
03001001 2 2014-11-13 04:30:00 0 -0.1221 5 0 0 02014-11-13 14:30:00 2014-11-13 04:30:12 0
您可以使用
str
函数将元素转换为字符串,还可以使用join
函数将字符串列表连接起来。谢谢Sebastian,我感谢您的快速响应!我要试试看!
03001001 2 2014-11-13 04:30:00 0 -0.1221 5 0 0 02014-11-13 14:30:00 2014-11-13 04:30:12 0