Python

advertisement

Python

What is Python?

• A programming language we can use to communicate with the computer and solve problems

• We give the computer instructions that it will execute

What is Python?

• Python is a high level language that we (humans) can understand

– Other examples include C++ and Java

• A machine can only understand low level language

• So we process the high level to low level so the computer will understand!

Translation

• How do we translate high level languages to low level languages?

– We use interpreters and compilers!

– Interpreters process the program a little bit at a time and runs it

– Compilers translate everything before running it

Some Python Vocab

Program – a file of code that may contain functions

Script – a short code that we can run in a command line

Variable – names we assign the values to, allowing us to reuse them later on

– For example: x = 1 or msg = “Hello world!”

– Variables can be changed throughout a program

– For example: x = 1, x = x + 1

Python Vocab

Comments – notes ignored by the computer

– For example: x + y # variables store user input

Operators – mathematical symbols

– +, -, *, /, ** (exponents), == (equality)

Python Vocab

Keyword – words with meaning/purpose in Python

– For example: “and”, “print”, “if”

Expression – statements that produce values

– 3 + 5, “Hello world!”

Error – program has a problem in the command area

Instance – one run-through of a program

Indentation

• A REQUIREMENT IN PYTHON!

• Indenting specifies the “scope” of different chunks of your code

– Everything indented after a first, unindented line

“belongs” to that line!

Things to Note

• Python is case sensitive

– A function called “first” is different than a function called “FIRST” or

“First” or “fiRSt”

• Python doesn’t like spaces or punctuation marks

– You can’t name your function “spam Five” or “spam.Five”

– You could, however, name your function“spamFive” or “spam_Five”

• Some words in Python can’t be used as names

– Keywords can never be used as function/variable names

– Check the colors of the words! Purple and orange are KEYWORDS!

LET’S PLAY WITH PYTHON!

Our age(number) function

• We had an argument passed into our function!

• The argument is known as a parameter

• Example def add(a, b): print(“This is a + b: “, a+b)

• a and b are the parameters

Data Types

• Numeric

– Integers (5, 2, -1)

– Floating Point Numbers (0.2, 3.14159, 28.92)

• Non-numeric

– String (text), lists, dictionaries, etc

– Basically anything you can’t add up using a simple plus sign (+)

Not a String? Not a Problem!

• You can format outputting variables you’ve already defined x = 42 print “The value of x is”, x, “.”

• What does this print out?

Not a String? Not a Problem!

• The output is

– The value of x is 42.

• The bottom will cause an error.

x = 42 print “$” + x

• We can’t combine string and numbers. So what do we do?

Not a String? Not a Problem!

• We can make our numerical variable a string!

x = 42 print “$” + str(x)

• This will print out $42

More on Variables

• Variables can hold all kind of values, including strings, numbers, and user input

• To assign a string value to a variable, you have to wrap the string in quotes firstName = “Jessi” lastName = “Cheung” mathProblem = “5 + 5” print lastName , “,”, firstName, “;”, mathProblem

• What will this print?

More on Variables

• The output is: Cheung, Jessi; 5 + 5

• Variables can also be assigned new values that are relative to their old values total = 10 print “Original total:”, total total = total + 4 print “New total:”, total

• What does this print?

More on Variables

• The output is

Original total: 10

New total: 14

• Remember: a variable has to be defined on a previous line before it can be used on the right-hand side of an equation

ABC = ABC + 4 print “ABC:”, ABC

• ERROR. There was no mention of the value of “ABC” before the line trying to redefine it.

Python Arithmetic

• Try typing the following code in your program area and see what comes out!

def main(): a = 12 b = 2 c = 16 d = 3 e = 2.5

print “The value of a is”, a print (a / b) * 5 print a + b * d print (a + b) * d print b ** d print c – e a = a + b print “The value of a is”, a

Python Arithmetic

• Is this what you got?

the value of a is 12

30

18

42

8

13.5

the value of a is 14

Exercise time!

• Write a program that takes in a Celsius temperature (celsius) and returns the temperature in Fahrenheit

– Hint: To get Fahrenheit, multiply the Celsius by

(9.0/5.0) and add 32

Taking User Input

• Sometimes, instead of passing in an argument as a parameter, we can have the computer ask us what we want!

Taking User Input

name = requestString("Enter your name:") print name first pops up a dialog box (where you can enter a name, say ‘John Doe’): then outputs

John Doe

Taking User Input

• Let’s try it with numbers!

def requestNumber(): num = input(“Enter a number:”) print “Your number is:”, num print “Your number squared:”, num*num

Taking User Input

• What if you tried inserting a string into… def requestNumber(): num = input(“Enter a number:”) print “Your number is:”, num

• If you type hello , there will be an error. If you type

“hello” , it will work

• This is where raw_input comes into play!

Taking User Input

• raw_input will take exactly what you type and make it into a string def requestName(): name = raw_input (“Enter your name:”) print name, “is awesome!”

• Try typing in a number!

Let’s Write a Program!

• Let’s write a program that will calculate the area and the circumference of a circle!

• Open a new window (File/New Window)!

• At the top of your (blank) file, write the following:

# file name: circle.py

# author: Jessi Cheung

# description: a program to calculate the area and the circumference of a circle

• Save the program as circle.py

Let’s Write a Program

• Let’s define this program as main.

def main():

• Your turn!

– Use input to ask the user for the radius!

Let’s Write a Program

• We now have (besides our heading) def main(): radius = input(“What is the radius? “)

• Now let’s start the calculations!

– Circumference of a circle: Pi (3.14) times (radius times two)

– Area of a circle: Pi (3.14) times (radius squared)

Let’s Write a Program!

• We now have (besides our heading) def main(): radius = input(“What is the radius? “) circumference = 3.14 * (2 * radius) area = 3.14 * (radius * radius)

Let’s Write a Program!

• Now for the finishing touches!

• Let’s print out the output so we can see it!

Let’s Write a Program

def main(): radius = input(“What is the radius? “) circumference = 3.14 * (2 * radius) area = 3.14 * (radius * radius) print “The radius of our circle is”, radius print “The circumference of our circle is”, circumference print “The area of our circle is”, area

Let’s RUN the Program!

• Once you save your program, press F5 on your keyboard

• Nothing happens?!

Let’s RUN the Program!

• You must call your program!

• Call using main()

Let’s RUN the Program

• Another way you could run the program…

For Loops

• Also known as the “definite loop” – we know exactly how many times the loop will happen!

• Allows you to specify a list of items (numbers, words, letters, etc.) and specify actions to be performed on each one

• The official syntax for the for loop is: for <var> in <sequence>:

<body>

Help the Kittens!

• You are working at an animal shelter, and you’re asked to take a group of kittens and bathe, dry, and feed each one individually

Use a Loop!

• Using a for-loop type notation, your instructions would look like this:

Kittens = [kitty #1, kitty #2, kitty #3, ...] for kitty in Kittens: bathe kitty dry kitty feed kitty

Basic Loop

• See what happens when you put in this: p hrase = “Hello world!” for letter in phrase: print “the next letter is:”, letter

• The output!

the next letter is: H the next letter is: e the next letter is: l the next letter is: l the next letter is: o the next letter is: the next letter is: w the next letter is: o the next letter is: r the next letter is: l the next letter is: d the next letter is: !

Basic Loop

What Just Happened?

• Python went through the string one character at a time, treating the string like a sequence

• That means that the string can be split into its components (the characters)

Accumulator Variables

• When you’re using a for loop, sometimes you might want to keep a running total of numbers you’re calculating, or recombine bits of a string

Accumulator Variables

• Steps:

1.

Define a variable for the first time before the loop starts

2.

Redefine it as itself plus some operation in the body of the for loop total = 0 for num in [1,2,4,10,20]: total = total + num print “Total:”, total

• This will give the output

Total: 37

Accumulator Variables

• What is the point of accumulator variables?

– Counting

– Keeping score

– Debugging

Conditional Statements

• Equals: ==

• Does not equal: !=

• Try this: x = 1 if (x != 2): print “Artemis rocks”

Want to learn more?

• Go to: wiki.python.org/moin/BeginnersGuide

Download