1 or 1/0 doesn't raise an exception

MRAB google at mrabarnett.plus.com
Sun Dec 14 16:43:46 CET 2008


Rohannes wrote:
> 'Dive into Python' has a very memorable and interesting section on the
> exact behaviour of 'and' and 'or' in Python:
> 
> http://diveintopython.org/power_of_introspection/and_or.html
> 
>> No: &, | (and ^, too) perform bitwise operations in Python, C and Java:
> 
> "In complete evaluation ... both expressions are always evaluated. To
> obtain complete evaluation in Java, you use & rather than && ... and
> use | in place of ||" - Walter Savitch, Absolute Java 2nd ed.
> 
> Although & IS the bitwise-AND operator in Java:
> http://java.sun.com/docs/books/tutorial/java/nutsandbolts/operators.html
> 
> I guess it's a matter of context.
> 
Java has a bool type that's distinct from the int type. &, | and ^ are 
bitwise for int and Boolean for bool, and in both cases they are strict. 
&& and || are for bool only and they are lazy.

In Pascal the behaviour of "and" and "or" is implementation-dependant...



More information about the Python-list mailing list