这是我的密码
N=str(input("Enter the catagory: "))
Countries=["canada","albania","cuba"]
if N=="Countries":
y=random.choice(Countries)
如果我这样做的话,代码会接受国家的元素,但是当我尝试使用它创建函数时,我失败了。例如,我有许多catogories,所以我不想写,如果像每10次函数分类。因此我试着这样写
N=str(input("Enter the catagory: "))
Countries=["canada","albania","cuba"]
def cata(N):
y=random.choice(N)
z=len(str(y))
return (z,y)
但在这个时候,当我键入国家时,我只得到国家的字母,所以代码引用的是“国家”这个词,而不是列表名字。还有我需要国家名单上的要素。我不知道怎么修
谢谢。你知道吗
函数结束后,我需要y和z值。你知道吗
如果您有许多类别,并且需要一个函数从其中一个列表中返回一个随机值,这取决于您发送的列表的名称,我认为最好的方法是通过一个以列表为值的字典来实现。像这样的
现在,您的函数可以将列表的名称作为参数,并使用它在字典中查找以获得适当的列表,并从中返回一个随机值
您将str(一段数据)与变量和一段程序代码混为一谈。你知道吗
如果用户在输入中输入
'Countries'
,字符串N
就会变成['C', 'o', 'u', ...]
内的列表random.choice(N)
。你知道吗要“修复”你的程序,你可以这样做:
但是,强烈建议不要对用户输入的字符串应用
eval()
。大多数用户至少在某些时候会犯错误,恶意用户可能会滥用它来破坏您的程序甚至系统。你知道吗相关问题 更多 >
编程相关推荐