python-使用逗号打印unicode
有人能解释为什么会这样吗python-使用逗号打印unicode,python,Python,有人能解释为什么会这样吗 for name in session.query(Device.manufacturer_name): print name 导致 (u'Apple',) (u'Samsung',) (u'Sony',) (u'HTC',) 但是这个,我认为是完全一样的 for device in session.query(Device): print device.manufacturer_name 给出不同的结果 Apple Samsung Son
for name in session.query(Device.manufacturer_name):
print name
导致
(u'Apple',)
(u'Samsung',)
(u'Sony',)
(u'HTC',)
但是这个,我认为是完全一样的
for device in session.query(Device):
print device.manufacturer_name
给出不同的结果
Apple
Samsung
Sony
HTC
您需要一个特定的列,结果是以行的形式出现的。每行是一个只有1个值的元组 只需编制索引即可获得该值:
for row in session.query(Device.manufacturer_name):
print row[0]
也可以使用元组分配:
for name, in session.query(Device.manufacturer_name):
print name
注意目标列表的中的逗号;Python现在将每个元组解压到一个目标名称的“列表”中。它们是元组(很可能),您可以这样解压它们:
for name, in session.query(Device.manufacturer_name):
print name
那些是元组。