原代码
pairs = { 1:"water", "white":[2,3,4] , True:False , None:True}
print(pairs.get(1))
运行结果为 False
为什么这就正确执行了??
另外还有一个问题是
字典中的 Ture:Flase 和 None:Ture 是什么意思?
这是因为在字典中,数字1和布尔值True是被视为相同的键,它们都会被转换为布尔值True。
由于get()方法在字典中查找键时是按照对象的相等性进行比较的,它将把键1和键True视为相同的键。因此,pairs.get(1)实际上会返回键True对应的值False。
当你把key改成15的时候,15和true就区别开来了,从来得到“water”
字典中:
True: False
表示key=True, value=False
None:Ture
表示key=None, value=True
注意,Python是没有null的, 通常来说python中的None就类似于其它语言比如JS中的null
因为在第一个示例中,键为1对应的值是"water"的键值对并不存在,因此使用get方法获取该键对应的值时返回了默认值False。而在第二个示例中,键为15对应的值是"water"的键值对存在,因此使用get方法获取该键对应的值时返回了"water"。
“True”表示真、正确、成功等,而“False”表示假、错误、失败等;“None”表示空、不存在、未定义等。
针对问题中提到的Python中出现False的问题,解决方法因具体情况而异,以下为可能存在的几种情况及解决方法:
可能是代码逻辑错误导致的False出现,可以检查代码中的条件判断、循环、函数等逻辑部分,确认代码是否正确执行。如果出现问题可以使用print语句、debug工具等方法进行调试。
可能是某些变量值出现问题导致的False,此时可以加入一些条件判断语句进行排查和处理,比如使用if语句判断变量值是否符合预期,或使用assert语句对变量值进行强制检查等。
可能是Python中的一些特殊规则导致的False,比如段落0中提到的not判断None须知。这种情况下可以根据具体规则进行调整代码逻辑。
关于问题中类似字典中True:False和None:True这样的代码片段,它们的意思如下:
True:False代表字典中True的值为False,即将True和False进行关联,在字典中以键值对的形式存在。
None:True代表字典中None的值为True,同样是将None和True进行关联,在字典中以键值对的形式存在。
这种方式常用于实现一些逻辑判断、状态管理等功能。如果要访问这些值,可以直接使用字典的键获取对应的值,如dict[True]。如果出现False= True这样的全局变量赋值情况,则会对这些键值对的访问产生影响,需要特别注意。