通过用户输入调用函数?

2024-06-01 01:12:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python的新手,我想从用户输入并打印月份名称,我不知道我在这段代码中做错了什么,请纠正我

value=raw_input("Enter value to print month ")
    def switch_demo(argument=value):
        switcher = {
            1: "January",
            2: "February",
            3: "March",
            4: "April",
            5: "May",
            6: "June",
            7: "July",
            8: "August",
            9: "September",
            10: "October",
            11: "November",
            12: "December"
        }
        print switcher.get(argument, "Invalid month")

    switch_demo(value)

Tags: 代码用户名称inputrawvaluedemoargument
2条回答

原始输入接受值并以字符串形式返回。因此,当您输入1或2时,它将返回为“1”或“2”。你知道吗

必须将输入值显式转换为int:

value=int(raw_input("Enter value to print month "))

或者,可以使用input()接受用户输入:

value = input("Enter value to print month ")

您的问题是“switcher”字典有整数键,调用时参数是字符串

print switcher.get(argument, "Invalid month")

一种可能的解决方案是将参数强制转换为int,这样就可以工作了。你知道吗

print switcher.get(int(argument), "Invalid month")

相关问题 更多 >