This course will become read-only in the near future. Tell us at community.p2pu.org if that is a problem.

Variables, expressions, and statements. [Oct. 9, 2011, 7:41 p.m.]



Lets look at three components of many programming languages.

Three primary tools we will be working with are:

  • Statements - small parts of a program that do not necessarily return a result. A program is formed by a sequence of one or more statements.
  • Names (a.k.a. variables) - pointers to data stored in memory.
  • Expressions - combination of names, symbols,  functions, and/or operators that return another value.

These three aspects are fundamental to programming in general and will be explored throughout this course.

Examples:
In Python, statements can take many forms and work with many programming elements such as names and operators.

Names are labels that point to a specific item in the computer's memory. Assignment statements are statements where we assign a name to a value, or memory location. Below, a_name points to the memory location of a_value.

>>> a_name = 'a_value'

Names, technically called identifiers, must start with an underscore (the "_" character) or a lowercase letter. Names can contain any sequence of letters, numbers, and underscores. Names cannot contain spaces or other special characters. Names are case sensetive, so 'Sunshine' and 'SUNSHINE' are two different names.

There are 33 reserved words that may not be used as names. The following table outlines Python's reserved words.

Python Reserved Words
False None True and assert
break class continue def del
else except finally for from
global import in is lambda
nonlocal not pass raise return
try while with    
         

Expressions are a subset of statements and typically return some result. Basic examples of expressions include arithmetic operations.

Operators are included in expressions and consist of symbols such as

  • +
  • -
  • /
  • *
  • **

Here are some operators in action:

>>> 2 + 3 # Addition
5
>>> 3 - 2 # Subtraction
1
>>> 5 * 5 # Multiplication
25
>>> 10 / 5 # Division
2
>>> 3 ** 3 # Exponent
27

Learning Resources

Assignment

  1. Review the documents in the learning resources section.
  2. Be sure to complete the excercises as we are here to practice.
  3. Copy your completed excercises and share them via a pastebin service such as dPaste.

If you have any questions or difficulties post them here and we will work together to make sure that everyone has a positive learning experience. Please also post ideas and insights into these concepts. We can learn a lot from each others' perspectives and experience :-)