簡體   English   中英

Django - 如何為 values_list 中的每個元組添加一個值

[英]Django - How to add a value to each tuple in values_list

我有一個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都將是理想的結果。

您必須創建一個新元組並使用可迭代對象對其進行初始化,如下所示:

for a in mylist:
    if some condition:
        b = a + ('x',)
    else:
        b = a + ('y',)
    do something with b

或類似的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM