用for语句进行变量

时间:2018-11-01 03:13:10

标签: python

是否有一种方法,可以使用for语句中的变量通过for语句创建变量,以便在变量名的末尾添加数字?

以下是我要实现的目标的一个示例:

for i in range(1,9):
    grade+i = round(float(input(firstprompt)))
    type+i = input(secondprompt)

2 个答案:

答案 0 :(得分:0)

我认为最好使用listdict对象代替

对于列表

grade = []
type = []
for i in range(1,9):
    grade.append(round(float(input(firstprompt))))
    type.append(input(secondprompt))


对于字典

grade = {}
type = {}
for i in range(1,9):
    grade["grade"+str(i)] = round(float(input(firstprompt)))
    type["type"+str(i)] = input(secondprompt)

答案 1 :(得分:0)

我以为我真的不可能,但是我意识到您可以在exec循环中使用for来达到这种效果:

prompt1 = 'Enter a number:\n'; prompt2 = 'Enter a string:\n' for i in range(1, 9): exec('grade{} = int(input(prompt1))'.format(i)) exec('type{} = input(prompt2)'.format(i))

尽管如Andreas所建议,但列表可能会更好。