为了账号安全,请及时绑定邮箱和手机立即绑定

为什么python and 运算中返回的是第二个値?

c= 'python' print 'hello,', c and 'why' 为什么结果选‘why’不选'python'

正在回答

4 回答

因为在and运算中,第一个c='python'是True,这时取决于下一位是True还是False,所以输出'why'

如果是or运算的话,第一个是True,整个语句就是True了,所以输出‘python’

0 回复 有任何疑惑可以回复我~
#1

邬玺邬玺 提问者

非常感谢!
2018-01-29 回复 有任何疑惑可以回复我~

这个叫短路,在很多语言中都有的特性,在且的情况下,全部为真才为真,因为第一个c是真,所以它无法判断整个表达式是否为真或为假(前后都为真才是真,其中一个为假就是假了),他就会接着进行后面的,所以就是选择了后面的,如果这个条件表达式是或,前面的已经是真了,不需要管后面的是真是假都能证明整个表达式为真,就不会进行后面的,自然会选择前面的,这个东西在很多语言中都有,大致理解就是&&(and)的情况下前面为真进行后面,前面为假不进行后面,||(or)的情况下,前面为真不进行后面,前面为假进行后面,谢谢

1 回复 有任何疑惑可以回复我~
#1

邬玺邬玺 提问者

辛苦了,非常感谢,说得很明白
2018-01-29 回复 有任何疑惑可以回复我~
#2

邬玺邬玺 提问者

想采纳这个采纳不了了...
2018-01-29 回复 有任何疑惑可以回复我~

在and运算过程中,第一个值如果为真,则返回第二个值。(第二个值决定最后结果) 第一个值如果为假,则结果一定为假,则返回第一个值。

0 回复 有任何疑惑可以回复我~
#1

邬玺邬玺 提问者

非常感谢
2018-01-29 回复 有任何疑惑可以回复我~

and是串联运算,or是并联运算

0 回复 有任何疑惑可以回复我~
#1

邬玺邬玺 提问者

非常感谢
2018-01-29 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

为什么python and 运算中返回的是第二个値?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信