第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何從長(zhǎng)度可變的元組列表中提取元組

如何從長(zhǎng)度可變的元組列表中提取元組

揚(yáng)帆大魚 2023-03-01 16:55:56
我有一個(gè)元組列表,它來(lái)自我的 Python 腳本的另一部分,并且可以具有可變長(zhǎng)度。我想分別提取元組并將它們存儲(chǔ)到多個(gè)新列表中。這是我可以獲得的示例:mylist = [('aaa', 'bbb', 'ccc'),('ddd', 'eee', 'fff'),('ggg', 'hhh', 'iii'),('jjj', 'kkk', 'lll'), ... etc.]我想要的結(jié)果是這樣的:mylist1 = ['aaa', 'bbb', 'ccc']mylist2 = ['ddd', 'eee', 'fff']mylist3 = ['ggg', 'hhh', 'iii']mylist4 = ['jjj', 'kkk', 'lll']etc.由于我開始使用 Python,我知道循環(huán)for可以提取列表中的項(xiàng)目,如下所示:for item in mylist:   mylist1 = item但是上面代碼的問(wèn)題是它list1只會(huì)包含最后一個(gè)元組,而其他元組無(wú)論如何都不會(huì)存儲(chǔ)。我需要在循環(huán)或類似的東西中放置一個(gè)循環(huán)。怎么做?
查看完整描述

4 回答

?
慕森卡

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超8個(gè)贊

在你的問(wèn)題中,你說(shuō),

上面代碼的問(wèn)題是 list1 將只包含最后一個(gè)元組,而其他元組無(wú)論如何都不會(huì)存儲(chǔ)

不過(guò),這并不完全正確。列表完成后為真,但是,當(dāng)循環(huán)仍在運(yùn)行時(shí),list1 將按順序設(shè)置為列表的每個(gè)項(xiàng)目。因此,如果您在循環(huán)中將 list1 添加到您的電子郵件,則列表中的每一項(xiàng)都將被添加。

我會(huì)做這樣的事情:

for item in your_list:
   email += list(item)
   email += '\n'

或者,更簡(jiǎn)單地說(shuō):

email += '\n'.join(map(list, your_list))


查看完整回答
反對(duì) 回復(fù) 2023-03-01
?
三國(guó)紛爭(zhēng)

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超7個(gè)贊

將每個(gè)內(nèi)部元組附加到新列表。所以你的最終列表成為列表列表:


[['aaa', 'bbb', 'ccc'], [['ddd', 'eee', 'fff'],....]

fin_list = []


original_list = [

('aaa', 'bbb', 'ccc'),

('ddd', 'eee', 'fff'),

('ggg', 'hhh', 'iii'),

('jjj', 'kkk', 'lll'), 

.......

]



for each_tuple in original_list:

    fin_list .append(list(each_tuple))

輸出:


[['aaa', 'bbb', 'ccc'], ['ddd', 'eee', 'fff'], ['ggg', 'hhh', 'iii'], ['jjj', 'kkk', 'lll']]

方法二


class XY_Lists(object):

  def __init__(self,list_of_tups):

    count=0

    for each_tup in list_of_tups:

      setattr(self,"List_{}".format(count),list(each_tup))

      count+=1


my_named_list=XY_Lists(original_list)

print(my_named_list.List_0)

# you can keep accessing the class object attributes one by one

輸出:


['aaa', 'bbb', 'ccc']


查看完整回答
反對(duì) 回復(fù) 2023-03-01
?
largeQ

TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊

為了完整起見,這里是原始問(wèn)題的答案:


mylist = [

('aaa', 'bbb', 'ccc'),

('ddd', 'eee', 'fff'),

('ggg', 'hhh', 'iii'),

('jjj', 'kkk', 'lll'), 

]


for i in range(len(mylist)):

    exec(f"list{i+1} = list(mylist[{i}])")

然而,正如討論所表明的那樣,這不是一個(gè)好主意,當(dāng)然有一種更簡(jiǎn)單的方法可以實(shí)現(xiàn)您想要做的事情。上面的代碼會(huì)在內(nèi)存中創(chuàng)建一堆代碼中沒(méi)有顯式定義的變量,所以在以后調(diào)試和維護(hù)代碼的時(shí)候肯定會(huì)很頭疼。


查看完整回答
反對(duì) 回復(fù) 2023-03-01
?
翻翻過(guò)去那場(chǎng)雪

TA貢獻(xiàn)2065條經(jīng)驗(yàn) 獲得超14個(gè)贊

雖然這段代碼無(wú)法將元組動(dòng)態(tài)分配到變量中,但它可以從給定的列表中提取元組并通過(guò)“列表理解”將它們轉(zhuǎn)換為列表。請(qǐng)讓我知道是否可以進(jìn)行動(dòng)態(tài)分配。


Mylist = [('aaa', 'bbb', 'ccc'), ('ddd', 'eee', 'fff'), ('ggg', 'hhh', 'iii'), ('jjj', 'kkk', 'lll')]


for i in range(len(Mylist)):

   print("Mylist",i+1,"=",[x for x in Mylist[i]])


查看完整回答
反對(duì) 回復(fù) 2023-03-01
  • 4 回答
  • 0 關(guān)注
  • 143 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)