python - 用逗号打印unicode

标签 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
Sony
HTC

最佳答案

您要求特定的列,并且您会得到行形式的结果。每行都是一个只有 1 个值的元组。

您只需通过索引即可获取该值:

for row in session.query(Device.manufacturer_name):
    print row[0]

或者您可以使用元组赋值:

for name, in session.query(Device.manufacturer_name):
    print name

注意for目标列表中的逗号; Python 现在将每个元组解压到一个目标名称的“列表”中。

关于python - 用逗号打印unicode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24630127/

相关文章:

python - 如何添加 g :Vertex GraphSON in Python Gremlin?

python - python中的list(set)操作是O(1)吗?

python 使用命名空间处理 xml 字符串

python - Pandas - DataFrame 将列或旋转列转换为新行

python:从有序列表中排序键子列表的最快方法是什么

python - PyScripter 不会更新我的导入

python - Django 信号与 Python 线程

python - 有没有一种简单的方法来获取所有常见的模块扩展?

python - 如何将 2 个 ROS 主题合并为 1 个?

python - 在 Python 2.7 中使用 Ruffus 库,just_print 标志失败