2024-05-19 23:26:15 发布
网友
我执行此操作来检索queryset:
Name.objects.values_list('name', flat=True)
它返回以下结果:
[u'accelerate', u'acute', u'bear', u'big']
结果都是unicode(u')。如何将它们全部删除以便得到结果:
['accelerate', 'acute', 'bear', 'big']
如果您想用utf8编码,只需执行以下操作:
definitions_list = [definition.encode("utf8") for definition in definitions.objects.values_list('title', flat=True)]
您可以对所有值调用str(请注意,map有点懒,添加list()以立即将其转换回可索引对象):
str
list()
thingy = list(map(str, [u'accelerate', u'acute', u'bear', u'big']))
或者使用列表理解:
[str(item) for item in [u'accelerate', u'acute', u'bear', u'big']]
但是,最后,为什么要显式地将它们添加到django模板(比如{{ value }})中,u将消失。
{{ value }}
我认为最简单的方法是使用json.dumps()
json.dumps()
json.dumps(definitions.objects.values_list('title', flat=True))
所以您将得到类似json格式的字符串结果
'["accelerate", "acute", "bear", "big" ...]'
如果您想将其更改为python变量,只需使用eval作为函数,这样您的代码就更像这样
eval
json_format_string = json.dumps(definitions.objects.values_list('title', flat=True)) my_list = eval(json_format_string) # ['accelerate', 'acute', 'bear', 'big' ...]
如果您想用utf8编码,只需执行以下操作:
您可以对所有值调用
str
(请注意,map有点懒,添加list()
以立即将其转换回可索引对象):或者使用列表理解:
但是,最后,为什么要显式地将它们添加到django模板(比如
{{ value }}
)中,u将消失。我认为最简单的方法是使用
json.dumps()
所以您将得到类似json格式的字符串结果
如果您想将其更改为python变量,只需使用
eval
作为函数,这样您的代码就更像这样相关问题 更多 >
编程相关推荐