Conditionals And Control Flows

Cai Gengyang gengyangcai at gmail.com
Wed May 4 11:23:00 EDT 2016


Sorry I mistyped , this should be correct :

bool_one = False and False --- This should give False because none of the statements are True 
bool_two = True and False --- This should give False because only 1 statement is True 
bool_three = False and True --- This should give False because only 1 statement is True 
bool_five = True and True --- This should give True because both statements are True 






On Wednesday, May 4, 2016 at 11:10:28 PM UTC+8, Jussi Piitulainen wrote:
> Cai Gengyang writes:
> 
> > I am trying to understand the boolean operator "and" in Python. It is
> > supposed to return "True" when the expression on both sides of "and"
> > are true
> >
> > For instance,
> >
> > 1 < 3 and 10 < 20 is True --- (because both statements are true)
> 
> Yes.
> 
> > 1 < 5 and 5 > 12 is False --- (because both statements are false)
> 
> No :)
> 
> > bool_one = False and False --- This should give False because none of the statements are False
> > bool_two = True and False --- This should give False because only 1 statement is True 
> > bool_three = False and True --- This should give False because only 1 statement is True
> 
> Yes.
> 
> > bool_five = True and True --- This should give True because only 1 statement is True 
> 
> No :)
> 
> > Am I correct ?
> 
> Somewhat.
> 
> In a technical programming-language sense, these are "expressions", not
> "statements". Technically, if the first expression evaluates to a value
> that counts as true in Python, the compound expression "E and F"
> evaluates to the value of the second expression.
> 
> Apart from False, "empty" values like 0, "", [] count as false in
> Python, and all the others count as true.
> 
> But it's true that "E and F" only evaluates to a true value when both E
> and F evaluate to a true value.
> 
> Your subject line is good: Python's "and" is indeed a conditional,
> control-flow operator.



More information about the Python-list mailing list