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

如何使用python中的代码创建变量,python,variables,Python,Variables,有没有办法用python中的一段代码创建新变量? 例如,如果我需要使用输入(“你叫什么名字?”) 并为每个答案创建一个变量,例如第一个答案的name1,name2,name3等` 您将如何做到这一点?相当简单: name1 = input("What is your name? ") 应该有用 要获得数量可变的名称,可以将其放入列表中: number_names = int(input("How many names do you want? ")) names = [] for i in

有没有办法用python中的一段代码创建新变量? 例如,如果我需要使用
输入(“你叫什么名字?”)
并为每个答案创建一个变量,例如第一个答案的
name1
name2
name3
等` 您将如何做到这一点?

相当简单:

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

值得注意的是,我假设您使用的是Python3.x。

请尝试创建变量

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

您可以使用
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

使用列表并执行
名称。追加(输入)