提问者:小点点

PYTHON_NAMEERROR:/functhion


一个名为month_days的函数,它接收月份的名称和该月份的天数作为参数。 调整代码的其余部分,使结果相同。 通过使用列出的两个月的正确参数进行函数调用来确认结果。

def month_days(month, days):
    month__name = str(month)
    month__days = int(days)
    print( month__name+"has" + month__days + "days" )
month_days(June,30)

NameError:未定义名称“June”


共2个答案

匿名用户

欢迎来到SO!

首先,让我们尝试理解什么是NameError。 Python中的NameError通常指执行或调用未找到或未实例化的对象。

这里的month_days(June,30),这个June是什么?? 它是一个已经定义的变量吗?

我猜如果您试图传递june字符串作为输入,如果是这样,请尝试执行以下操作

month_days("June", 30) # works
month_days('June',30) # also works

通常在python中,所有字符串输入都以单引号或双引号为大小写。

匿名用户

您将June作为值传递给函数,因此,它应该是字符串,即使用单引号/双引号。 我在代码中观察到的另一个问题是,您正在用字符串添加integer(month_days)。 因此,通过将输入天数转换为字符串I/O整数来更正。 请找到下面的代码。

def month_days(month, days):
    month__name = str(month)
    month__days = str(days)
    print( month__name+" has " + month__days + " days" )
month_days('June',30)