我有一个变量列表,其中包含指向网站的特定链接。我想设置一个变量以打开一个随机变量,但是每当我设置“ randvid”时,它就会变成字符串,而不是我要使用的变量。这是我的代码示例:
import random
import webbrowser
vid1 = 'link1'
vid2 = 'link2'
vid3 = 'link3'
n = random.randint(1,3)
randvid = 'vid' + str(n)
webbrowser.open_new(randvid)
答案 0 :(得分:1)
您可以在此处使用random.choice:
random.choice([vid1, vid2, vid3])
可以在here上找到文档,但基本上,它是从序列(例如列表)中选择一个随机项目。通过从定义的变量选项中构建列表,您可以使用random.choice随机选择一个项目。
如果需要能够再现结果,则可以将random.choice与random.seed结合使用:
random.seed(1000)
random.choice([vid1, vid2, vid3])
答案 1 :(得分:1)
您需要声明一个列表,并将链接的这三个变量存储在列表中,然后调用函数random.choice(lst)
,并将值存储在变量中。
这是完整的代码。
import random
import webbrowser
vid1 = 'link1'
vid2 = 'link2'
vid3 = 'link3'
lst=[vid1,vid2,vid3]
var = random.choice(lst)
webbrowser.open_new(var)
答案 2 :(得分:0)
我认为我们不需要像我一样创建太多变量。
只需将所有链接放入列表
mylinks =['link1', 'link2', 'link3']
选择随机索引
n = random.randint(0, len(mylinks))
从列表中选择n个索引
webbrowser.open_new(mylinks[n])