鱼C论坛

 找回密码
 立即注册
查看: 2467|回复: 3

python3 里面的and运算不是逻辑与运算吗?

[复制链接]
发表于 2016-7-5 15:03:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
在idle里面试了几组数
比如说 4 and 5 和 5 and 4,结果显示的后一个数的值,感觉这就不是逻辑与了
求解答,非常感谢!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2016-7-5 16:20:37 | 显示全部楼层
首先python中除了0和空值('',[],{}等)为False外,其他都作为True,而且逻辑与逻辑或的判断采用短路法,即逻辑或第一个数为True整个值就为True,即返回第一个数True,但不是True本身,而是第一个数的值,同理逻辑与需要两个数都为True才返回True,所以需运算到第二个数,返回第二个数的值。对于False也有类似的结果,如:
  1. >>> [] and 1
  2. []
  3. >>> [] or ''
  4. ''
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2016-7-5 16:56:43 | 显示全部楼层
冬雪雪冬 发表于 2016-7-5 16:20
首先python中除了0和空值('',[],{}等)为False外,其他都作为True,而且逻辑与逻辑或的判断采用短路法,即 ...

明白了,非常感谢!!!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-7-6 10:46:42 | 显示全部楼层
Python 本来就是这样与啊,不能用c语言的思维去思考这个
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-2-21 14:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表