0% found this document useful (0 votes)
52 views

Sudden Python: Drinking From The Fire Hose

This document provides an introduction to programming in Python. It explains how to download and run Python and IDLE, the basic data types in Python like integers, strings, and booleans. It covers writing simple programs with commands, reading and printing data, arithmetic operators, variables, and comments. It also describes control structures like if/else statements, for and while loops, functions, and basic data structures like lists. The goal is to get readers started with the basics of the Python language.

Uploaded by

gulfam
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

Sudden Python: Drinking From The Fire Hose

This document provides an introduction to programming in Python. It explains how to download and run Python and IDLE, the basic data types in Python like integers, strings, and booleans. It covers writing simple programs with commands, reading and printing data, arithmetic operators, variables, and comments. It also describes control structures like if/else statements, for and while loops, functions, and basic data structures like lists. The goal is to get readers started with the basics of the Python language.

Uploaded by

gulfam
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 25

Sudden Python

Drinking from the Fire Hose

8-Aug-19
Get Python (and IDLE)
 We will be using Python 2 (version 2.7.3), not
Python 3
 Get it from www.python.org
 The download includes an Integrated
Development Environment (IDE), named
“IDLE”

2
Running IDLE
 IDLE opens a window in which you can
enter and run Python commands
 This window is called a REPL (Read-Eval-
Print-Loop)
 Choose File -> New Window to open a
window in which you can type entire
programs
 To execute the program, hit the F5 key

3
Commands and data
 A program consists of commands (more commonly
called “statements”) that manipulate data
 Here are the four most common kinds of data:
 Integers (whole numbers), such as 5, 17, or -300
 “Floating point” numbers, such as 3.1416
 “Strings” are character sequences enclosed in either single
quotes or double quotes, such as "Madam, I'm Adam" and
'"Too soon," she said.'
 Straight quotes only (" and '), not curly quotes ( “” ‘’)

 “Boolean” (logical) values—there are only two of these,


True and False

4
Program components
 Programs can read in data
 Programs can write results
 In between reading and writing, programs can
 compute, that is, do arithmetic (or logic)
 test, that is, decide what to do next
 loop, that is, do the same actions a number of times
 delegate, that is, ask other parts of the program to
perform some task
 Also, programs can ignore comments
5
Doing simple arithmetic
 Here are the arithmetic operators:
 + performs addition
 - performs subtraction
 * performs multiplication
 / performs division
 When dividing two integers, the result is an integer: 14 / 5 is 2
 % performs modulus (remainder of division): 14 % 5 is 4
 ** performs exponentiation
 The result of doing arithmetic is often assigned to a variable:
sum = 10 + 22 + 13 + 44 + 72
 Variables can be used in arithmetic:
average = sum / 5

6
Reading in data
 Here’s how to ask the user to enter a string:
 name = raw_input("What is your name? ")
 Whatever the user types in, up to a press of the Enter key, is
a string that is assigned to the variable name
 Here’s how to ask the user to enter a number:
 age = input("What is your age? ")
 Whatever the user types in, up to a press of the Enter key, is
converted to a number and assigned to the variable age

 input and raw_input are functions (or methods)


 For now, we will treat “function” and “method” as synonyms

7
Printing results
 To print results, use the print statement
 print "Two plus two is four"
 You can print multiple things separated by commas
 print 2, "plus", 2, "is", 2 + 2
 Each print statement writes a “newline” at the end (so
that the next print statement goes to a new line)
 You can omit the newline by ending with a comma:
 print 2, "plus", 2,
print "is", 2 + 2

8
Comments
 A comment is a note to any human looking at the program;
comments are ignored by the computer.
 A comment begins with # and extends to the end of the line
 Good uses of comments:
 At the beginning of a program, to tell what the program does
 When using someone else’s code, to say where you got it from
 To explain any code that’s hard to understand
 Bad uses of comments:
 To explain something that’s obvious anyway
 To explain code that’s hard to understand, but could be made simpler
 To add irrelevant comments, like # Go Eagles!
 When you should instead use a doc string (described on a later slide)

9
Layout
 Every statement goes on a line by itself
 Put spaces around operators, including the assignment
operator (=)
 average = sum / 5
 Put spaces after commas (but not before commas)
 print 2, "plus", 2, "is", 2 + 2
 When using a function, do not put spaces on either side
of the parentheses
 age = input("What is your age? ")

10
Decisions and tests
 Your program can decide what to do by making a test
 The result of a test is a boolean value, True or False
 Here are tests on numbers:
 < means “is less than”
 <= means “is less than or equal to”
 == means “is equal to”
 != means “is not equal to”
 >= means “is greater than or equal to”
 < means “is greater than”
 These same tests work on strings
 All capital letters are “less than” all lowercase letters
11
Compound tests
 Boolean values can be combined with these operators:
 and – gives True if both sides are True
 or – gives True if at least one side is True
 not – given True, this returns False, and vice versa
 Examples
 score > 0 and score <= 100
 name == "Joe" and not score > 100

12
The if statement
 The if statement evaluates a test, and if it is True,
performs the following indented statements; but if the
test is False, it does nothing
 Examples:
 if grade == "A+":
print "Congratulations!"
 if score < 0 or score > 100:
print "That’s not possible!"
score = input("Enter a correct value: ")

13
if with else
 The if statement can have an optional else part, to be
performed if the test result is False
 Example:
 if grade == "A+":
print "Congratulations!"
else:
print "You could do so much better."
print "Your mother will be disappointed."

14
if with elif
 The if statement can have any number of elif tests
 Only one group of statements is executed—those
controlled by the first test that passes
 Example:
 if grade == "A":
print "Congratulations!"
elif grade == "B":
print "That's pretty good."
elif grade == "C":
print "Well, it's passing, anyway."
else:
print "You really blew it this time!"
15
Indentation
 Indentation is required and must be consistent
 Standard indentation is 4 spaces or one tab
 IDLE does this pretty much automatically for you
 Example:
 if 2 + 2 != 4:
print "Oh, no!"
print "Arithmethic doesn't work!"
print "Time to buy a new computer."

16
Lists and ranges
 A list is a sequence of values enclosed in brackets
 Example: courses = ['CIT 591', 'CIT 592', 'CIT 593']
 You can refer to an individual value by putting a bracketed
number (starting from 0) after the list
 Example: courses[2] is 'CIT 593'
 The len function tells you how many things are in a list
 Example: len(courses) is 3
 range is a function that creates a list of integers, from the first
number up to but not including the second number
 Example: range(0, 5) creates the list [0, 1, 2, 3, 4]
 If you give range a third number, it is used as the step size
 Example: range(2, 10, 3) creates the list [2, 5, 8]

17
The for loop
 A for loop performs the same statements for each value
in a list
 Example:
for n in range(1, 4):
print "This is the number", n
prints
This is the number 1
This is the number 2
This is the number 3
 The for loop uses a variable (in this case, n) to hold the
current value in the list

18
The while loop
 A while loop performs the same statements over and over until
some test becomes False
 Example:
n = 3
while n > 0:
print n, "is a nice number."
n = n – 1
prints
3 is a nice number.
2 is a nice number.
1 is a nice number.
 If the test is initially False, the while loop doesn't do anything.
 If the test never becomes False, you have an "infinite loop."
This is usually bad.

19
Calling a function
 A function is a section of code that either (1) does some input or
output, or (2) computes some value.
 A function can do both, but it's bad style.
 Good style is functions that are short and do only one thing
 Most functions take one or more arguments, to help tell them what to do
 Here's a function that does some input:
age = input("How old are you? ")
The argument, "How old are you?", is shown to the user
 Here's a function that computes a value (a list):
odds = range(1, 100, 2)
The arguments are used to tell what to put into the list

20
Defining a function
1. def sum(numbers):
2. """Finds the sum of the numbers in a list."""
3. total = 0
4. for number in numbers:
5. total = total + number
6. return total

1. def defines a function


numbers is a parameter: a variable used to hold an argument
2. This doc string tells what the function does
6. A function that computes a value must return it
sum(range(1, 101)) will return 5050
21
Summary
 Arithmetic: + - * / % < <= == != >= >
 Logic (boolean): True False and or not
 Strings: "Double quoted" or 'Single quoted'
 Lists: [1, 2, 3, 4] len(lst) range(0, 100, 5)
 Input: input(question) raw_input(question)
 Decide: if test: elif test: else:
 For loop: for variable in list:
 While loop: while test:
 Calling a function: sum(numbers)
 Defining a function: def sum(numbers): return result

22
Advice to beginners
 Programming is hard!
 The individual building blocks are all pretty simple, but they go together in
complex patterns
 You will make many mistakes, and they will (almost) all be
stupid mistakes
 That doesn’t mean you are stupid!
 Experts make just as many stupid mistakes, but they are more experienced
at finding and correcting them
 Therefore: Don’t be shy about letting other people see your mistakes
 In a few weeks you will find that it suddenly all starts to make
sense, and you'll wonder what the problem was
 Don’t panic!
 There’s lots of help available
23
Advice to non-beginners
 A lot is known about how to program well
 You probably have a lot of bad habits to unlearn
 The following are important habits to learn:
 Thorough testing is essential; anything less is amateurish
 Concentrate on clarity (not efficiency) at all times
 If code is hard to understand, simplify it
 Use comments to explain code you aren’t able to simplify
 Remember that the best way to learn something is to
teach it

24
The End

“Programming is an art form that fights back.”


-- Anonymous

25

You might also like