Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何获取所选选项并将其存储在python中的变量中?_Python - Fatal编程技术网

如何获取所选选项并将其存储在python中的变量中?

如何获取所选选项并将其存储在python中的变量中?,python,Python,我想从dict中获取所选选项并对其进行操作,但当我打印变量时,它不会打印任何选项 def play(): switcher = { 1: "Rock", 2: "Paper", 3: "Scissors"} print(switcher) i = input("Enter Your Choice: ") s = switcher.get(i) print(s) play() 调用switcher.

我想从dict中获取所选选项并对其进行操作,但当我打印变量时,它不会打印任何选项

def play():
    switcher = {
        1: "Rock",
        2: "Paper",
        3: "Scissors"}
    print(switcher)  
    i = input("Enter Your Choice: ") 
    s = switcher.get(i)
    print(s)


play()

调用
switcher.get(i)
时,变量
i
是一个字符串,而它应该是一个int。这就解释了您的问题。
作为解决方案,我建议您首先检查输入值是否正确(如果不正确,请重复该问题),然后将其转换为int,如下所示:

def play():
    switcher = {
        1: "Rock",
        2: "Paper",
        3: "Scissors"}
    print(switcher)
    while True:
        i = input("Enter Your Choice: ")
        if i in ["1", "2", "3"]:
            i = int(i)
            break;
    s = switcher.get(i)
    print(s)

play()

i
是字符串,因为这是
input()
的返回类型。尝试
switcher.get(int(i))
。理想情况下,虽然您可以将键更改为字符串,或者在无法将输入转换为
int
的情况下进行更好的处理。好的,明白了。谢谢