python中1 is True 的结果为False,而1 == True的结果为True。
python中True的数值就是1,那为什么1 is True 的结果为False呢?
因为is判断和==判断是有区别的:
- ==:比较的是value,也就是数值的比较;
- is :比较的是内存地址,也就是两个对象是否是同一个对象;
由于python是弱类型语言,因此在使用判断时涉及到此类问题定要认真考虑否则容易出现程序bug。
python中1 is True 的结果为False,而1 == True的结果为True。
python中True的数值就是1,那为什么1 is True 的结果为False呢?
因为is判断和==判断是有区别的:
由于python是弱类型语言,因此在使用判断时涉及到此类问题定要认真考虑否则容易出现程序bug。