如何将我的输入设置为Python中已经存在的变量?
我对python还比较陌生,我不知道怎么做。我需要从用户那里获取一个数字输入,然后将其转换为一个已经存在的变量。到目前为止,我已经成功地获取了输入,但我认为我无法将其转换为变量。我试着把这个输入数字加在一个字符串的后面,这个字符串是pos 举个例子,如果我输入数字1,我会有pos1,2就是pos2,依此类推如何将我的输入设置为Python中已经存在的变量?,python,Python,我对python还比较陌生,我不知道怎么做。我需要从用户那里获取一个数字输入,然后将其转换为一个已经存在的变量。到目前为止,我已经成功地获取了输入,但我认为我无法将其转换为变量。我试着把这个输入数字加在一个字符串的后面,这个字符串是pos 举个例子,如果我输入数字1,我会有pos1,2就是pos2,依此类推 if win == 0: displayboard() newPlot = input("") postochange = "pos"+newPlot if
if win == 0:
displayboard()
newPlot = input("")
postochange = "pos"+newPlot
if postochange == "X" or "O":
print ("Sorry, but that space is taken!")
else:
if playerTurn == 1:
postochange = "X"
else:
postochange = "O"
我将尝试进一步简化,我想让用户给我一个数字,我将其添加到文本pos中,并与我已有的变量相对应。你能改用值字典吗,例如:
pos_s = {'pos1':None,
'pos2':None}
pos_s['pos'+str(user_number)] = desired_value
然后,要获取变量的值,可以执行以下操作:
pos_s.获取'pos'+struser_number,无只是补充Mason Caiby的答案,如果最终用户只能输入有限的值集合,我将使用。 然后可以关联/对应已有的变量
你想做的事情最好通过列表或口述来完成。查阅在线文档。你有错误吗?也许你只需要在str上施展新情节?posttochange=pos+strnewPlot确保用户号码是一个字符串,而不是一个INT。这是可行的,必须更改脚本中的其他内容,但效果良好。谢谢你的帮助
# Python program to demonstrate differences
# between normal and frozen set
# Same as {"a", "b","c"}
normal_set = set(["a", "b","c"])
# Adding an element to normal set is fine
normal_set.add("d")
print("Normal Set")
print(normal_set)
# A frozen set
frozen_set = frozenset(["e", "f", "g"])
print("Frozen Set")
print(frozen_set)
# Uncommenting below line would cause error as
# we are trying to add element to a frozen set
# frozen_set.add("h")