1 回答

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個(gè)贊
當(dāng)您定義 stageone 時(shí),使其成為如下列表的列表:
stageone = [[title, band], [title, band], [title, band]]
然后,而不是print(stageone)在最后一行做:
for entry in stageone:
shortTitle = ' '.join([word[0] for word in entry[0].split(' ')])
print(shortTitle, entry[1])
更新:要一次獲得一個(gè)提示,您需要一些方法來(lái)選擇一個(gè)條目stage one(對(duì)于游戲,我想這可能是一個(gè)隨機(jī)索引)。然后你只需刪除for我之前給出的循環(huán)并像這樣使用你選擇的條目
i = #some code to select an entry in stageone
entry = stageone[i]
shortTitle = ' '.join([word[0] for word in entry[0].split(' ')])
print(shortTitle, entry[1])
請(qǐng)注意,有很多方法可以使它更緊湊,但最初的問(wèn)題讓我認(rèn)為更冗長(zhǎng)的答案比最小的解決方案更好。例如,@calestinifor在我的第一個(gè)回復(fù)中評(píng)論了一個(gè)單行來(lái)替換循環(huán),
res = [[' '.join([x[0] for x in i[0].split()]), i[1]] for i in stageone ]
這是一個(gè)很好的解決方案 -res將是一個(gè)列表[[song hint, band name], [song hint, band name]],然后您可以根據(jù)需要打印提示。我沒(méi)有改變我原來(lái)的答案,因?yàn)槲也幌矚g在一行中使用兩個(gè)列表推導(dǎo)(我很難閱讀代碼)。
添加回答
舉報(bào)