.pyofiles so that executing the same file is faster the second time (recompilation from source to byte code can be avoided). This ``intermediate language'' is said to run on a ``virtual machine'' that calls the subroutines corresponding to each bytecode.
int(3.15)converts the floating point number to the integer
3, but in
3+4.5, each argument is of a different type (one int, one float), and both must be converted to the same type before they can be added or it will raise a
TypeError. Coercion between two operands can be performed with the
coercebuiltin function; thus,
3+4.5is equivalent to calling
operator.add(*coerce(3, 4.5))and results in
operator.add(3.0, 4.5). Without coercion, all arguments of even compatible types would have to be normalized to the same value by the programmer, e.g.,
float(3)+4.5rather than just
-1), often written
iin mathematics or
jin engineering. Python has builtin support for complex numbers, which are written with this latter notation; the imaginary part is written with a
3+1j. To get access to complex equivalents of the math module, use cmath. Use of complex numbers is a fairly advanced mathematical feature. If you're not aware of a need for them, it's almost certain you can safely ignore them.
11/4currently evaluates to
2. If the module in which it is executed had enabled true division by executing:
from __future__ import division
11/4 would evaluate to
importing the __future__
module and evaluating its variables, you can see when a new feature
was first added to the language and when it will become the default:
>>> import __future__ >>> __future__.division _Feature((2, 2, 0, 'alpha', 2), (3, 0, 0, 'alpha', 0), 8192)
>>> sum(i*i for i in range(10)) # sum of squares 0, 1, 4, ... 81 285
11/4currently evaluates to
2in contrast to the
2.75returned by float division. Also called floor division. When dividing two integers the outcome will always be another integer (having the floor function applied to it). However, if one of the operands is another numeric type (such as a float), the result will be coerced (see coercion) to a common type. For example, an integer divided by a float will result in a float value, possibly with a decimal fraction. Integer division can be forced by using the
//operator instead of the
/operator. See also __future__.
pythonwith no arguments (possibly by selecting it from your computer's main menu). It is a very powerful way to test out new ideas or inspect modules and packages (remember
forstatement does that automatically for you, creating a temporary unnamed variable to hold the iterator for the duration of the loop. See also iterator, sequence, and generator.
result = ["0x%02x" % x for x in range(256) if x % 2 == 0]generates a list of strings containing hex numbers (0x..) that are even and in the range from 0 to 255. The if clause is optional. If omitted, all elements in
import this'' at the interactive prompt.
See About this document... for information on suggesting changes.