Difference between revisions of "Python - Operators, Expressions"

From Computer Science
Jump to: navigation, search
(No difference)

Revision as of 14:54, 2 January 2020

See also Python Programming - Getting Started

Following are terse descriptions for Python3 operators. For more information, see w3schools for a bit more explanation and python.org for the language reference.

Operators

The following are a basic set of operators that most will intuitively know what they do.

  • Arithmetic operators: + - * / //
    • Note that / is floating point division (3/2 is 1.5), while // is integer division (3//2 is rounded down to 1).
  • Assignment operators: =
  • Comparison operators: < <= == != >= >
    • Note that == tests if two values are equal, != tests if they are not equal (3 != 2 will be True, 3 == 2 will be False).
  • Logical operators: and or not
  • Membership operators: in, not in

More Operators

The following are more operators. These may not be obvious. Some examples are given, but you may need to read through your Python text to understand these.

  • Arithmetic operators: % **
    •  % is remainder (10 % 3 is 1, 17 % 3 is 2), and ** is exponentiation (10**3 is 1000, 2**3 is 8).
  • Assignment operators: += -= *= /= //= %= **= &= |= ^= >>= <<=
    • Each of these is shorthand. For example, x += 3 is a shorthand for x = x + 3
  • Identity operators: is, is not
    • Test whether two objects are the same, not just whether the values are the same. For simple variables/expressions, is will be the same as ==, but for lists/tuples/dictionaries is only gives True if the two things being compared are actually the same data in memory.
  • Bitwise operators: & | ^ ~ << >>
    • These operate on the bits of a number. You need to understand binary before you can understand these. Examples: 12 & 8 evaluates to 8, 12 | 7 evaluates to 15, 12 ^ 8 evaluates to 4, ~7 evaluates to -8 (same as -7-1), 3 << 2 evaluates to 12, 12 >> 1 evaluates to 6.