两个字符串列表。从每个列表中随机选择并将它们与Python中的%s融合在一起

时间:2016-09-09 09:02:14

标签: python list python-3.x

我定义了2个列表:

    lunchQuote=['ska vi ta %s?','ska vi dra ned till %s?','jag tänkte käka på %s, ska du med?','På %s är det mysigt, ska vi ta där?']

lunchBTH=['thairestaurangen vid korsningen','det är lite mysigt i fiket jämte demolabbet','Indiska','Pappa curry','boden uppe på parkeringen'
,'Bergåsa kebab','Pasterian','Villa Oscar','Eat here','Bistro J']

正如您在第一个列表中所看到的,我想使用%s将每个列表的字符串绑定到一个新的字符串,我可以将其发送回程序。

成功的新字符串的一个例子可能是:

ska vi ta thairestaurangen vid korsningen?

问题是我真的不明白它如何与%s一起工作以及在使用之前我必须做些什么。我之前使用的是.format,但之后只使用常规字符串,而不是来自两个不同列表的字符串。

我已经开始保存随机选择的选项并将它们保存在变量中:

 lunchQuote = random.choice(lunchQuote)
        BTH = random.choice(lunchBTH)

接下来我该怎么做?

1 个答案:

答案 0 :(得分:1)

最好的方法是使用format方法,将lunchQuote定义为

import random

lunchQuote=['ska vi ta {}?', 'ska vi dra ned till {}?', 'jag tänkte käka på {}, ska du med?', 'På {} är det mysigt, ska vi ta där?']

lunchBTH=['thairestaurangen vid korsningen', 'det är lite mysigt i fiket jämte demolabbet', 'Indiska', 'Pappa curry', 'boden uppe på parkeringen', 'Bergåsa kebab', 'Pasterian','Villa Oscar', 'Eat here', 'Bistro J']

lunchQuote = random.choice(lunchQuote)
BTH = random.choice(lunchBTH)

print(lunchQuote.format(BTH))

您还可以使用%s,如下所示:

import random

lunchQuote=['ska vi ta %s?', 'ska vi dra ned till %s?', 'jag tänkte käka på %s, ska du med?', 'På %s är det mysigt, ska vi ta där?']

lunchBTH=['thairestaurangen vid korsningen', 'det är lite mysigt i fiket jämte demolabbet', 'Indiska', 'Pappa curry', 'boden uppe på parkeringen', 'Bergåsa kebab', 'Pasterian','Villa Oscar', 'Eat here', 'Bistro J']

lunchQuote = random.choice(lunchQuote)
BTH = random.choice(lunchBTH)

print(lunchQuote % BTH)