Modul 22 von 24 · Text
Key Takeaways
Key Takeaways
- An Expression is a combination of values (or variable, operators, calls to functions - you will learn about them soon) which evaluates to a certain value, e.g., 1 + 2
- Operators are special symbols or keywords which are able to operate on the values and perform (mathematical) operations, e.g., the * operator multiplies tow values: x * y
- Arithmetic operators in Python: + (addition), - (subtraction), * (multiplication), / (classic division - always returns a float), % (modulus - divides left operand by right operand and returns the remainder of the operation, e.g., 5 % 2 = 1 ), ** (exponentiation - left operand raised to the power of right operand, e.g.d, 2 ** 3 = 2 * 2 * 2 = 8). // (floor/integer division - returns a number resulting from division - returns a number resulting from division, but rounded down to the nearest whole number, e.g., 3 ?? 2.0 = 1.0)
- a unary operator is an operator with only one operand, e.g., -1, or +3
- A binary operator is an operator with tow operands, e.g., 4 + 5, or 12 % 5
- Some operators act before others - the hierarchy of priorities:
- the ** operator (exponentiation) has the highest priority;
- then the unary + and - (note: a unary operator to the right of the exponentiation operator binds more strongly, for example: 4 ** -1 equals 0.25
- then *, /, //, and %
- and, finally the lowest priority: the binary + and -
- Subexpressions in parentheses are always calculated first, e.g., 15 -1 * (5 * (1 + 2)) = 0
- The exponentiation operator uses right-sided binding, e.g., 2 ** 2 ** 3 = 256
Exercise 1
What is the output of the following snippet?
print((2 ** 4), (2 * 4.), (2 * 4))
16 8.0 8
Exercise 2
What is the output of the following snippet?
print((-2 /4), (2 / 4), (2 // 4), (-2 //4))
-0.5 0.5 0 -1
Exercise 3
What is the output of this snippet?
print((2 % -4), (2 % 4), (2 ** 3 ** 2))
-2 2 512