Editors
Henceforth, the standard procedure to save and run a Python program is as follows:
For PyCharm
- Open PyCharm.
- Create new file with the filename mentioned.
- Type the program code given in the example.
- Right-click and run the current file.
NOTE: Whenever you have to provide command line arguments, click on
For other editors
- Open your editor of choice.
- Type the program code given in the example.
- Save it as a file with the filename mentioned.
- Run the interpreter with the command
python program.py to run the program.
Example: Using Variables And Literal Constants
Type and run the following program:
# Filename : var.py
i = 5
print(i)
i = i + 1
print(i)
s = '''This is a multi-line string.
This is the second line.'''
print(s)What will be the value of
Output will be:
This is a multi-line string. This is the second line.
How It Works
Here's how this program works. First, we assign the literal constant value
Then we add
Similarly, we assign the literal string to the variable
Logical And Physical Line
A physical line is what you see when you write the program. A logical line is what Python sees as a single statement. Python implicitly assumes that each physical line corresponds to a logical line.
An example of a logical line is a statement like print('hello world') - if this was on a line by itself (as you see it in an editor), then this also corresponds to a physical line.
Implicitly, Python encourages the use of a single statement per line which makes code more readable.
If you want to specify more than one logical line on a single physical line, then you have to explicitly specify this using a semicolon (';') which indicates the end of a logical line/statement. For example:
i = 5
print(i)is effectively same as
i = 5;
print(i);which is also same as
i = 5; print(i);and same as
i = 5; print(i)However, we strongly recommend that you stick to writing a maximum of a single logical line on each single physical line. The idea is that you should never use the semicolon. In fact, I have never used or even seen a semicolon in a Python program.
There is one kind of situation where this concept is really useful: if you have a long line of code, you can break it into multiple physical lines by using the backslash. This is referred to as explicit line joining:
s = 'This is a string. \
This continues the string.'
print(s)Output:
Similarly,
i = \
5is the same as
i = 5Sometimes, there is an implicit assumption where you don't need to use a backslash. This is the case where the logical line has a starting parentheses, starting square brackets or a starting curly braces but not an ending one. This is called implicit line joining. You can see this in action when we write programs using list in later chapters.
Which of these is the recommended way to write multiple statements?
What will this code print?
s = 'This is a string. \
This continues the string.'Indentation
Whitespace is important in Python. Actually, whitespace at the beginning of the line is important. This is called indentation. Leading whitespace (spaces and tabs) at the beginning of the logical line is used to determine the indentation level of the logical line, which in turn is used to determine the grouping of statements.
This means that statements which go together must have the same indentation. Each such set of statements is called a block. We will see examples of how blocks are important in later chapters.
One thing you should remember is that wrong indentation can give rise to errors. For example:
i = 5
print('Value is', i) print('I repeat, the value is', i)
When you run this, you get the following error:
File "whitespace.py", line 3
print('Value is', i)
^
IndentationError: unexpected indent
Notice that there is a single space at the beginning of the second line. The error indicated by Python tells us that the syntax of the program is invalid i.e. the program was not properly written. What this means to you is that you cannot arbitrarily start new blocks of statements (except for the default main block which you have been using all along, of course). Cases where you can use new blocks will be detailed in later chapters such as the control flow.
What will happen with this code?
i = 5
print(i) # One space before print Write a correctly indented if statement. Enter the correct number of spaces and hit enter:
if x > 0:
Complete this statement about Python blocks:
Statements that go together must have the same
Summary
Now that we have gone through many nitty-gritty details, we can move on to more interesting stuff such as control flow statements. Be sure to become comfortable with what you have read in this chapter.