簡體   English   中英

將元組附加到列表中

[英]Append tuples in order to a list

我是python的新手。 是否可以將我的元組添加到空列表中,但是以有序的方式?

if i not in myTransfer:部分也不理想我知道,但只是為了獲得更清晰的輸出。 我嘗試在下面的代碼中執行此操作,但如果有更簡單的解決方案將非常感激

tupDays = ('Monday', 'Wednesday', 'Monday')
tupAmount = (100,300,100)
myTransfer = []

for a in tupAmount:
    myTransfer.append(a)
    for i in tupDays:
        if i not in myTransfer:
            myTransfer.append(i)

print(myTransfer)

我想得到的是:

[100,Monday,200,Wednesday,100,Monday]

也許將它放在字典中會更好,所以它可以成為一個鍵值對,如下所示,但我似乎無法掌握我需要使用的內置方法。

{
100: 'Monday',
300: 'Tuesday',
100: 'Monday'
}

Thank you so much for the help.

一種方法包括使用zipitertools.chain
在這里,我假設2個元組具有相同的長度。

import itertools

my_transfer = list(itertools.chain(*zip(tupAmount, tupDays)))
# [100, 'Monday', 300, 'Wednesday', 100, 'Monday']

這個怎么運作:

1)zip聚合來自兩個元組的元素。

>>> list(zip(tupAmount, tupDays))
[(100, 'Monday'), (300, 'Wednesday'), (100, 'Monday')]

2)itertools.chain返回迭代中的元素。 星型運算符解包元組列表。 這對應於:

>>> list(itertools.chain((100, 'Monday'), (300, 'Wednesday'), (100, 'Monday')))
[100, 'Monday', 300, 'Wednesday', 100, 'Monday']

3)最后,list()構造一個列表

暫無
暫無

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

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