Python - Iot PDF
Python - Iot PDF
Python Programming
Dr. Vinay Chamola
EEE F411 Internet of Things, BITS-Pilani
1
Languages
Some influential ones:
FORTRAN
science / engineering
COBOL
business data
LISP
logic and AI
BASIC
a simple language
Python
2
Programming basics
code or source code: The sequence of instructions in a program.
3
Compiling and interpreting
Many languages require you to compile (translate) your program
into a form that the machine understands.
compile execute
source code byte code output
Hello.java Hello.class
interpret
source code output
Hello.py
4
Expressions
expression: A data value or set of operations to compute a value.
Examples: 1 + 4 * 3
42
5
Real numbers
Python can also manipulate real numbers.
Examples: 6.022 -15.9997 42.0 2.143e17
When integers and reals are mixed, the result is a real number.
Example: 1 / 2.0 is 0.5
6
Math commands
Python has useful commands for performing calculations.
Command name Description Constant Description
abs(value) absolute value e 2.7182818...
ceil(value) rounds up pi 3.1415926...
cos(value) cosine, in radians
floor(value) rounds down
log(value) logarithm, base e
log10(value) logarithm, base 10
max(value1, value2) larger of two values
min(value1, value2) smaller of two values
round(value) nearest whole number
sin(value) sine, in radians
sqrt(value) square root
Examples: x = 5
gpa = 3.14
x 5 gpa 3.14
9
Workout
10
print
print : Produces text output on the console.
Syntax:
print (‘Message’)
print (Expression)
Prints the given text message or expression value on the console, and
moves the cursor down to the next line.
print (Item1, Item2, ..., ItemN)
Prints several messages and/or expressions on the same line.
Examples:
print (‘Hello, world!’) ; print (‘Hello’, ‘world’);
age = 30
print "You have", 65 – int(age), "years until retirement"
Output:
Hello, world!
You have 35 years until retirement
11
input
input : Reads a number from user input.
You can assign (store) the result of input into a variable.
Example:
age = input(‘How old are you?‘)
print (‘Your age is’, age)
print (‘You have", 65 – int(age), ‘years until retirement’
Output:
How old are you? 30
Your age is 30
You have 35 years until retirement
12
money= input('how much money do you have')
13
Repetition (loops)
and Selection (if/else)
14
The for loop
for loop: Repeats a set of statements over a group of values.
Syntax:
for variableName in groupOfValues:
statements
We indent the statements to be repeated with tabs or spaces.
variableName gives a name to each value, so you can refer to it in the statements.
groupOfValues can be a range of integers, specified with the range function.
Example:
for x in range(1, 6):
print (x, "squared is", x * x)
Output:
1 squared is 1
2 squared is 4
3 squared is 9
4 squared is 16
5 squared is 25
15
for x in range(1, 6):
print (x, "squared is", x * x)
print('I am done')
print('hello')
16
range
The range function specifies a range of integers:
range(start, stop) - the integers between start (inclusive)
and stop (exclusive)
It can also accept a third value specifying the change between values.
range(start, stop, step) - the integers between start (inclusive)
and stop (exclusive) by step
Example:
for x in range(5, 0, -1):
print (x)
print (‘Congratulations’)
Output:
5
4
3
2
1
Congratulations!
Exercise: Print 1 to 10 and then 10 to 1 by one code?
17
Cumulative loops
Some loops incrementally compute a value that is initialized outside
the loop. This is sometimes called a cumulative sum.
sum = 0
for i in range(1, 11):
sum = sum + (i * i)
print (‘sum of first 10 squares is’, sum)
Output:
sum of first 10 squares is 385
18
if
if statement: Executes a group of statements only if a certain
condition is true. Otherwise, the statements are skipped.
Syntax:
if condition:
statements
Example:
gpa = 3.4
if gpa > 2.0:
print "Your application is accepted."
19
if/else
if/else statement: Executes one block of statements if a certain
condition is True, and a second block of statements if it is False.
Syntax:
if condition:
statements
else:
statements
Example:
cgpa = 6
if cgpa > 4.0:
print (‘Application selected!’)
else:
print (‘Your application is denied.’)
Syntax:
while condition:
statements
Example:
number = 1
while number < 200:
print (number),
number = number * 2
Output:
1 2 4 8 16 32 64 128
21
Logic
Many logical expressions use relational operators:
Operator Meaning Example Result
== equals 1 + 1 == 2 True
!= does not equal 3.2 != 2.5 True
< less than 10 < 5 False
> greater than 10 > 5 True
<= less than or equal to 126 <= 100 False
>= greater than or equal to 5.0 >= 5.0 True
23
Strings
string: A sequence of text characters in a program.
Strings start and end with quotation mark " or apostrophe ' characters.
Examples:
"hello"
"This is a string"
"This, too, is a string. It can be very long!"
A string may not span across multiple lines or contain a " character.
"This is not
a legal String."
"This is not a "legal" String either."
24
Indexes
Characters in a string are numbered with indexes starting at 0:
Example:
name = “VChamola"
index 0 1 2 3 4 5 6 7
character V C h a m o l a
Example:
print name, "starts with", name[0]
Output:
Vchamola starts with V
25
String properties
len(string) - number of characters in a string
(including spaces)
str.lower(string) - lowercase version of a string
str.upper(string) - uppercase version of a string
length = len(name)
big_name = str.upper(name)
print (length, big_name)
26
Text processing
text processing: Examining, editing, formatting text.
often uses loops that examine the characters of a string one by one
27
Strings and numbers
ord(text) - converts a string into a number.
Example: ord("a") is 97, ord("b") is 98, ...
28
Sequence types: Tuples,
Lists, and Strings
Sequence Types
1. Tuple: (‘john’, 32, [CMSC])
A simple immutable ordered sequence of
items
Items can be of mixed types, including
collection types (CMSC = (4,5) )
2. Strings: “John Smith”
Immutable
Conceptually very much like a tuple
3. List: [1, 2, ‘john’, (‘up’, ‘down’)]
Mutable ordered sequence of items of
mixed types
Similar Syntax
All three sequence types (tuples, strings,
and lists) share much of the same syntax
and functionality.
Key difference:
>>> [1, 2, 3] * 3
[1, 2, 3, 1, 2, 3, 1, 2, 3]
>>> “Hello” * 3
‘HelloHelloHello’
Mutability:
Tuples vs. Lists
Lists are mutable
Potentially confusing:
extend takes a list as an argument.
append takes a singleton as an argument.
>>> li.append([10, 11, 12])
>>> li
[1, 2, ‘i’, 3, 4, 5, ‘a’, 9, 8, 7, [10, 11, 12]]
Operations on Lists Only
Lists have many methods, including index,
count, remove, reverse, sort
>>> li = [‘a’, ‘b’, ‘c’, ‘b’]
>>> li.index(‘b’) # index of 1st occurrence
1
>>> li.count(‘b’) # number of occurrences
2
>>> li.remove(‘b’) # remove 1st occurrence
>>> li
[‘a’, ‘c’, ‘b’]
Operations on Lists Only
>>> li = [5, 2, 6, 8]
>>> li.sort(some_function)
# sort in place using user-defined comparison
Tuple details
The comma is the tuple creation operator, not parens
>>> 1,
(1,)
Python shows parens for clarity (best practice)
>>> (1,)
(1,)
Don't forget the comma!
>>> (1)
1
Empty tuples have a special syntactic form
>>> ()
()
>>> tuple()
()
Summary: Tuples vs. Lists
Lists slower but more powerful than tuples
Lists can be modified, and they have lots of
features
To convert between tuples and lists use the