我正在学习 Python 函数的在线课程。我收到一个 NameError ,如下所示。有人能弄清楚为什么我会收到这样的错误吗?def student_details (**details_dictionary): if 'name' in details : print ("Name:", details['name'] ) if 'age' in details : print ("Age:", details['age'] ) if 'college' in details : print ("College:", details['college'] )student_details(name="John") NameError Traceback (most recent call last) <ipython-input-24-9617ce938851> in <module> ----> 1 student_details(name="John") <ipython-input-23-1424bf8f28d7> in student_details(**details_dictionary) 1 def student_details (**details_dictionary): ----> 2 if 'name' in details : 3 print ("Name:", details['name'] ) 4 if 'age' in details : 5 print ("Age:", details['age'] )NameError: name 'details' is not defined
3 回答
青春有我
TA贡献1784条经验 获得超8个赞
def student_details (**details_dictionary):
在这里你命名参数details_dictionary
if 'name' in details : print ("Name:", details['name'] )
然后在这里您尝试使用名为details
. 这些名称应该相同。我建议您将前者更改为 just details
。您通常应该避免在变量名中使用类似dictionary
或list
描述数据结构类型的词。例如,如果您返回并将字典更改为列表,那么您也必须跟踪变量名称以更改它们。您可以通过将这些细节从变量名中删除来避免这种额外的工作。
添加回答
举报
0/150
提交
取消