gpt4 book ai didi

Python 字符串 boolean 比较

转载 作者:太空宇宙 更新时间:2023-11-04 10:29:31 26 4
gpt4 key购买 nike

在进行一些编码挑战时,我遇到了一个非常奇怪的语言怪癖。我正在编写的程序是一个最小数字查找器。所以基本上你输入了一个数字列表,程序返回了最小的数字。有一段时间一切顺利,就像我说的,这是一个相当基本的程序,但是当我开始输入 2 或 3 位数字时, boolean 逻辑似乎崩溃了。在 2 位数字和 1 位数字的列表中,例如:
x = [10, 5, 10]

程序将返回 10 作为最小数字。但在常规的 1 位列表中,将返回正确的最低值。所以最终我发现这个错误是因为我忘记了将字符串类型转换为整数类型,一旦这个问题被修复,程序就可以完美运行了。但这仍然引出了一个有趣的问题,为什么 Python 认为“10”小于“5”而“9”大于“5”?为了故意证明 Python 相信这个事实并且它不是我程序中的一些外部因素,我打开了一个 python 解释器并实际输入了 "10" < "5"。口译员返回True .为什么会发生这种情况的任何想法?提前致谢!

最佳答案

Python 使用字典顺序又名 Lexicographical Order比较字符串时,即使字符串只包含数字。

在字典中,“亚当”<“夏娃”是因为“a”<“e”。同样,“10”<“5”,因为“1”小于“5”。

关于Python 字符串 boolean 比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27673792/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com