2.1.3.10 SECTION SUMMAR

Key takeaways

1. An expression is a combination of values (or variables, operators, calls to functions - you will learn about them soon) which evaluates to a value, e.g., 1 + 2.
2. Operators are special symbols or keywords which are able to operate on the values and perform (mathematical) operations, e.g., the * operator multiplies two values: x * y.
3. Arithmetic operators in Python: + (addition), - (subtraction), * (multiplication), /(classic division - returns a float if one of the values is of float type), % (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., 2 ** 3 = 2 * 2 * 2 = 8), // (floor/integer division - returns a number resulting from division, but rounded down to the nearest whole number, e.g., 3 // 2.0 = 1.0)
4. A unary operator is an operator with only one operand, e.g., -1, or +3.
5. A binary operator is an operator with two operands, e.g., 4 + 5, or 12 % 5.
6. Some operators act before others - the hierarchy of priorities:
  • unary + and - have the highest priority
  • then: **, then: */, and %, and then the lowest priority: binary + and -.
7. Subexpressions in parentheses are always calculated first, e.g., 15 - 1 * (5 * (1 + 2)) = 0.
8. 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))
 
Exercise 2
What is the output of the following snippet?
print((-2 / 4), (2 / 4), (2 // 4), (-2 // 4))
 
Exercise 3
What is the output of the following snippet?
print((2 % -4), (2 % 4), (2 ** 3 ** 2))
 

Comments

Popular Posts