我最近在我的程序中发现了一个拼写错误
while len(first_list) > second_list:
do_stuff
Run Code Online (Sandbox Code Playgroud)
我打得四处这一点,并发现5 < ["apple"] == True和5 > ["apple"] == False
为什么Python允许这些类型的比较?什么是在引擎盖下评估,以确定5是否小于["apple"]?
我认为在这种情况下比较类型,所以就像写:
\n\ntype(5) < type(["apple"])\nRun Code Online (Sandbox Code Playgroud)\n\n由于“int”和“list”是按字典顺序比较的(“i”<“l”),因此您将得到此输出。
\n\n如果你试试:
\n\n"5" > ["apple"]\nRun Code Online (Sandbox Code Playgroud)\n\n你会得到 False,因为“string”>“list”。
\n\n文档:
\n\n\n\nCPython实现细节:除数字之外的不同类型的对象按其类型名称排序;不\xe2\x80\x99t 支持正确比较的相同类型的对象按其地址排序。
\n
| 归档时间: |
|
| 查看次数: |
224 次 |
| 最近记录: |