3. The Python Interpreter
Python is an interpreted language
Commands are executed through the Python interpreter
A programmer defines a series of commands in advance and saves those
commands in a text file known as source code or a script.
For Python, source code is conventionally stored in a file named with the .py
suffix (e.g., demo.py)
3
4. Writing a Simple Program
Algorithm for calculating the area of a square
Obtain the width from the user
Computer the area by applying the following formula
𝒂𝒓𝒆𝒂 = 𝒘𝒊𝒅𝒕𝒉 ∗ 𝒘𝒊𝒅𝒕𝒉
Display the result
4
5. Reading Input from the Console
Use the input function to obtain a string
variable = input(‘Enter width : ’)
Use the eval function to evaluate expression
variable = eval(string_variable)
Combination
width = eval(input(‘Enter width : ’))
5
7. Identifiers
Identifiers in Python are case-sensitive, so temperature and Temperature are
distinct names.
Identifiers can be composed of almost any combination of letters, numerals,
and underscore characters.
An identifier cannot begin with a numeral and that there are 33 specially
reserved words that cannot be used as identifiers:
7
8. Types
Python is a dynamically typed language, as there is no advance declaration
associating an identifier with a particular data type.
An identifier can be associated with any type of object, and it can later be
reassigned to another object of the same (or different) type.
Although an identifier has no declared type, the object to which it refers has
a definite type. In our first example, the characters 98.6 are recognized as a
floating-point literal, and thus the identifier temperature is associated with
an instance of the float class having that value.
8
10. Boolean Data Types
Often in a program you need to compare two values, such as whether i is
greater than j
There are six comparison operators (also known as relational operators) that
can be used to compare two values
The result of the comparison is a Boolean value: true or false
Operator Name
< less than
<= less than or equal to
> greater than
>= greater than or equal to
== equal to
!= not equal to
10
11. String
Sequence of characters that is treated as a single item
Written as a sequence of characters surrounded by either single quotes (') or
double quotes (")
Position or index of a character in a string
Identified with one of the numbers 0, 1, 2, 3, . . . .
11
12. List
12
list1 = list() # Create an empty list
list2 = list([2, 3, 4]) # Create a list with elements 2, 3, 4
list3 = list(["red", "green", "blue"]) # Create a list with strings
list4 = list(range(3, 6)) # Create a list with elements 3, 4, 5
list5 = list("abcd") # Create a list with characters a, b, c
list1 = [] # Same as list()
list2 = [2, 3, 4] # Same as list([2, 3, 4])
list3 = ["red", "green"] # Same as list(["red", "green"])
append(x: object): None
insert(index: int, x: object): None
remove(x: object): None
index(x: object): int
count(x: object): int
sort(): None
reverse(): None
extend(l: list): None
pop([i]): object
13. List Is a Sequence Type
13
Operation Description
x in s True if element x is in sequence s
x not in s True if element x is not in sequence s
s1 + s2 Concatenates two sequences s1 and s2
s * n, n * s n copies of sequence s concatenated
s[i] ith element in sequence s
s[i : j] Slice of sequence s from index i to j - 1
len(s) Length of sequence s, i.e., the number of elements in s
min(s) Smallest element in sequence s
max(s) Largest element in sequence s
sum(s) Sum of all numbers in sequence s
for loop Traverses elements from left to right in a for loop
<, <=, >, >=, ==, != Compares two sequences
15. if-else Statement
15
if width > 0:
area = width * width
else:
print(‘width must be positive’)
if Boolean-expression:
statement(s) for the true case
else:
statement(s) for the false case
16. Multiple Alternative for if Statements
16
if score >= 90.0:
grade = 'A'
elif score >= 80.0:
grade = 'B'
elif score >= 70.0:
grade = 'C'
elif score >= 60.0:
grade = 'D'
else:
grade = 'F'
if score >= 90.0:
grade = 'A'
else:
if score >= 80.0:
grade = 'B'
else:
if score >= 70.0:
grade = 'C'
else:
if score >= 60.0:
grade = 'D'
else:
grade = 'F'
17. Logical Operators
17
Operator Description
not Logical negation
and Logical conjunction
or Logical disjunction
(year % 4 == 0 and year % 100 != 0) or year % 400 == 0)
A year is a leap year if it is divisible by 4 but not by 100, or it is divisible by 400.
18. Conditional Operator
18
y = 1 if x > 0 else -1if x > 0:
y = 1
else:
y = -1
if num % 2 == 0:
print(str(num) + “is even”)
else:
print(str(num) + “is odd”);
print("number is even" if (number % 2 == 0)
else "number is odd")
20. Loops
20
for i in range(1, 6):
print (i)
num = 1
while num <= 5:
print(num)
num += 1
while conditions:
indented block of statements
for var in sequence:
indented block of statements
21. Functions
Functions can be used to define reusable code and organize and simplify code
21
def sum_range(a, b):
result = 0
for i in range(a, b+1):
result += i
return result
def main():
print('Sum from 1 to 10 is ', sum_range(1, 10));
print('Sum from 50 to 100 is ', sum_range(50, 100));
main()
def function_name(list of parameters):
# Function body
22. Reading Input from Text Files
22
continent = input('Enter the name of a continent : ')
continent = continent.title()
if continent != 'Antarctica':
infile = open('UN.txt', 'r')
for line in infile:
data = line.split(',')
if data[1] == continent:
print(data[0])
else:
print('There are not countries in Antarctica.')
infile = open(‘Filename’, ‘r’)
23. List Comprehension
23
list1 = [x for x in range(5)]
[0, 1, 2, 3, 4]
line = input('Enter series of numbers : ')
text_numbers = line.split(' ')
numbers = [eval(num) for num in text_numbers]
24. Objects and Classes
Object-oriented programming enables you to develop large-scale software
and GUIs effectively.
24
class Rectangle:
def __init__(self, width = 1, height = 2):
self._width = width
self._height = height
def area(self):
return self._width * self._height
def perimeter(self):
return 2 * (self._width * self._height)
def main():
r1 = Rectangle(10, 20)
print('The area of the rectangle is : ', r1.area())
print('The perimeter of the rectangle is : ', r1.perimeter())
main()
class ClassName:
initializer
methods