我无法理解为什么Python没有按照我的要求去做。
方法:
def IdentifyUVIndex(self, UVType):
if (UVType >= '1' and UVType <= '2'):
return "Low Exposure."
elif (UVType >= '3' and UVType <= '5'):
return "Moderate Exposure."
elif (UVType >= '6' and UVType <= '7'):
return "High Exposure."
elif (UVType >= '8' and UVType <= '10'):
return "Very High Exposure."
elif (UVType >= '11'):
return "Extreme Exposure."
else:
return "Unknown."
所以,如果我输入:
print main().IdentifyUVIndex('1')
它返回低曝光。大!但是当我传递大于7的任何东西时,它会立即返回“极端曝光”。
我做错了吗?它应该返回非常高的曝光度。
如果我通过'11'它会返回极端曝光但返回低曝光?这太令人困惑!!
答案 0 :(得分:0)
您正在比较字符串,而不是整数:
>>> '1' <= '11' <= '2'
True
>>> 1 <= 11 <= 2
False
将输入数字转换为整数并相应地修改代码。