Python Application Programming 18CS752: Dr. Priya Kamath
Python Application Programming 18CS752: Dr. Priya Kamath
PROGRAMMING
18CS752
Dr. Priya Kamath
Associate Professor, Department of CSE
• Programmers have some tools that allow them to build new tools
Computer
Programmer
Hardware + Software
Main
Memory
Definitions
• Central Processing Unit: Runs the Program - The CPU is always wondering
“what to do next”. Not the brains exactly - very dumb but very very fast
• Main Memory: Fast small temporary storage - lost on reboot - aka RAM
• Secondary Memory: Slower large permanent storage - lasts until deleted - disk
drive / memory stick
Generic
Software What
Next? Computer
Input Central
and Output Processing
Devices Unit
Secondary
if x< 3: print Memory
Main
Memory
Generic
Software What
Next? Computer
Input Central
and Output Processing
Devices Unit
01001001 Secondary
00111001 Memory
Main
Memory
Machine
Language
Talking to Python
csev$ python3
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 5 2015, 21:12:44)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwinType
"help", "copyright", "credits" or "license" for more information.
>>> x = 1
>>> print(x)
1
>>> x = x + 1 This is a good test to make sure that you have
>>> print(x) Python correctly installed. Note that quit() also
2 works to end the interactive session.
>>> exit()
What Do We Say?
Elements of Python
• Vocabulary / Words - Variables and Reserved words (Chapter 2)
print(bigword, bigcount)
Reserved Words
You cannot use reserved words as variable names / identifiers
• Most programs are much longer, so we type them into a file and tell
Python to run the commands in the file.
• Interactive
• Script
print('Smaller') Program:
No Output:
x=5
Yes if x < 10: Smaller
x > 20 ? print('Smaller') Finis
if x > 20:
print('Bigger') print('Bigger')
No
print('Finis')
print('Finis')
n=5 Repeated Steps
No Yes Output:
n>0? Program:
5
print(n) n=5 4
while n > 0 :
3
print(n)
n = n -1 n=n–1 2
print('Blastoff!') 1
Blastoff!
Loops (repeated steps) have iteration variables that
print('Blastoff')
change each time through a loop.
name = input('Enter file:')
handle = open(name, 'r') Sequential
Repeated
counts = dict()
for line in handle: Conditional
words = line.split()
for word in words:
counts[word] = counts.get(word,0) + 1
bigcount = None
bigword = None
for word,count in counts.items():
if bigcount is None or count > bigcount:
bigword = word
bigcount = count
print(bigword, bigcount)
name = input('Enter file:') A short Python “Story”
handle = open(name, 'r') about how to count
counts = dict()
words in a file
for line in handle:
words = line.split() A word used to read
for word in words: data from a user
counts[word] = counts.get(word,0) + 1
•Logical errors
• Mistake in the order of the statements or how they are related to each other
•Semantic errors
• When t
•Running