【发布时间】:2012-07-25 07:51:05
【问题描述】:
我有一个 Python 脚本没有按预期评估两个值。值'10' 被确定为大于200。问题是保存 '10' 值的变量实际上是一个字符串而不是整数(而 200 是一个整数)。
我的问题是:
当根据整数评估字符串时,Python 会经历什么过程?如何进行比较?
例如:
string="10"
int=200
if string >= int:
print("String is greater")
else:
print("Int is greater")
会输出:
String is greater
这是为什么?我原以为 Python 在尝试比较这两种类型时会出错并退出。
【问题讨论】:
-
当它们都是字符串时更好,
"10" < "200"是真的,但是由于错误的原因,这使得在你做"20" < "100"时不可能抛出错误并且真的让你感到困惑。故事的寓意:知道你的对象是什么类型:)
标签: python string variables integer evaluation