如何使用python中的代码创建变量

时间:2015-03-30 09:51:08

标签: python variables

有没有办法用python中的一段代码创建新变量? 例如,如果我需要使用input("what's your name?") 并为每个答案创建一个变量,例如第一个答案的name1name2name3等等。 你会怎么做?

3 个答案:

答案 0 :(得分:2)

相当简单:

name1 = input("What is your name? ")

应该有用。

要获得可变数量的名称,您可以将它们放入列表中:

number_names = int(input("How many names do you want? "))

names = []

for i in range(number_names):
    names.append(input("What is your name? "))

for name in names:
    print(name)

作为事后的想法,如果你坚持使用name1, name2等而不是name[1], name[2] ......你可以使用字典:

number_names = int(input("How many names do you want? "))

names = {}

for i in range(number_names):
    name = input("What is your name? ")
    names['name'+str(i)] = name

print(names['name1']) # Assumming there are at least 2 names in the dict

值得注意的是我假设你使用的是python 3.x。

答案 1 :(得分:1)

尝试使用此方法创建变量

n=3
for i in range(n):
    var = input("what's your name?")
    globals()['name'+str(i)] = var #or locals()['name'+str(i)] if you want variables in a local scope, (inside a function)

print(name0,name1,name2) # upto n-1

答案 2 :(得分:0)

您可以使用exec,但这并不意味着您应该使用exec

for i in range(5):
    exec("name%d=raw_input('enter something ')" % (i + 1))

print name1
print name2
print name3
print name4
print name5