我是Udacity CS101上Python的超级初学者。任务是将条目is_noble_gas
添加到现有的嵌套字典中,以便在用括号查找时显示True
或False
。你知道吗
当我提交this代码来回答这个问题时,它告诉我我错了。我是不是忽略了什么?你知道吗
这是测验题:
测验:向嵌套词典添加值
尝试使用嵌套词典。在elements
字典的每个字典中添加另一个条目“is noble\u gas”。插入新条目后,您应该能够执行以下查找:
>>> print(elements['hydrogen']['is_noble_gas'])
False
>>> print(elements['helium']['is_noble_gas'])
True
这就是我的尝试:
elements = {
'hydrogen': {'number': 1, 'weight': 1.00794, 'symbol': 'H',
'is_noble_gas': 'False'},
'helium': {'number': 2, 'weight': 4.002602, 'symbol': 'He',
'is_noble_gas': 'True'}
}
首先,你没有做错什么。小测验的问题问得不太准确,测试也没有发现这个问题能以同样的方式解决的可能性。你知道吗
您只将
is_noble_gas
的值定义为字符串。你的尝试没有错。测验并没有真正明确说明布尔值实际上是必需的。你知道吗误解是print命令必须使用字符串表示。使用布尔值作为值本身是有意义的,只是作为字符串。例如在PEP-285中描述了这一点。你知道吗
不过,将布尔值作为值的解决方案当然更为优雅,因为它只能接受两个值,而且这些值也应该是
True
和False
。你知道吗此外,我还可以想象,测验不需要更改字典本身,而是需要在一个额外语句中将值赋给嵌套字典。你知道吗
相关问题 更多 >
编程相关推荐