Skip to main content
 首页 » 编程设计

python之Django之如何为 values_list 中的每个元组添加一个值

2024年12月31日26me-sa

我有一个values_list:

mylist = Region.objects.values_list('region_id','region').order_by('region') 
 
for x in mylist: print(x) 

返回

(2, 'Africa') 
(9, 'Antarctic') 
(3, 'Asia Temperate') 
... 

我想为每个元组添加第三个元素以获取

(2, 'Africa','x') 
(9, 'Antarctic','y') 
(3, 'Asia Temperate',x') 

我试过:

for a in mylist: 
    if some condition: 
        a + ('x',) 
    else: 
        a + ('y',) 

但它不起作用。

请您参考如下方法:

您必须将其添加回新列表,例如:

new_list=[] 
for a in my_list: 
    if some condition: 
        new_list.append(a+('x',)) 
    else: 
        new_list.append(a+('y',)) 

或者最好是单行列表理解:

new_list=[i+('x',) if some condition else i+('y',) for i in my_list] 

这两种情况 new_list 都是想要的结果。