Variables expressions and standard functions
This presentation is the property of its rightful owner.
Sponsored Links
1 / 72

Variables, Expressions, and Standard Functions PowerPoint PPT Presentation


  • 62 Views
  • Uploaded on
  • Presentation posted in: General

Variables, Expressions, and Standard Functions. Topics. Basic calculation Expressions, variables, and operator precedence Data types Input / Output Examples. A calculator. We can use a computer as a calculator. Just type expressions into the Python Shell. Python Shell in Wing IDE.

Download Presentation

Variables, Expressions, and Standard Functions

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Variables expressions and standard functions

Variables, Expressions, and Standard Functions


Topics

Topics

  • Basic calculation

  • Expressions, variables, and operator precedence

  • Data types

  • Input / Output

  • Examples


A calculator

A calculator

  • We can use a computer as a calculator.

  • Just type expressions into the Python Shell

Python Shell in Wing IDE


A calculator1

A calculator

  • Try this.

Type it intoPython Shell

>>> 10 * 5

50

>>> 1 + 2 + 3 + 4

10

>>> 1+2+3+4

10

>>> 1 * 4 + 5 ** 2

29

The answer

Spaces are irrelevant

** is for exponentiation


Expression

Expression

  • What we have just typed into the Python Shell is called expressions.

  • After the shell reads each expression, the shell evaluate it and reports the result.


Easy calculation

Easy calculation

  • An object moves with the starting speed of 10 m/s with an acceleration of 2 m/s2. After 5 seconds, how far is the object from its starting position?

s = ut + at2/2

10 * 5 + 2 * (5*5) / 2


Operators 1

Operators (1)

  • In previous examples, we use many operators such as +, -, or /, to tell Python to perform various computations with the data.

  • An operator tells Python what operation to perform with its operands.

operands

10 * 5

operator


Operators 2

Operators (2)

  • Operators can be

    • Binary operators that work with two operands, e.g., +, -, or *.5 * 3 10 – 2 15*7

    • Unaryoperators that work with a single operand, e.g, –.-3 +2 -5 * 7


Operators 21

Operators (2)

  • Basic mathematical operators are shown in the table below


Division in python

Division in Python

  • There are two operators related to division

division

modulo – find the remainder


Numbers in python

Numbers in Python

  • There are two types for numbers in Python: integer(type int) andfloating points (type float)


Quick test

Quick test


Integers v s floating points

Integers v.s. Floating-points

  • If you write a number without a "dot", it will be treated as an integer.

  • Results

    • Every mathematical operation between integer and integer returns an integer, except for division.

    • Division returns floating-point numbers.

    • Any operations with floating-point numbers return floating-point numbers.


3 5 2

3/5*2

  • Evaluation is usually done from left to right

((3/5)*2)

( 0.6 *2)


Operator precedence

Operator precedence

  • But operators have different precedence, e.g., * or/ have higher precedence over + or-.

2+3*6

2+(3*6)


This is just

This is just….

  • High-school math!


Operator precedence1

Operator precedence

  • Evaluation order is from left-to-right for operators with the same precedence, except **.


Try this 1

Try this (1)

2+5*6/3+(7-2*3)

What is the result?

13.0


Try this 2

Try this(2)

2 ** 2 ** 3

What is the result?

2 ** (2 ** 3)

28 = 256


Reusing values

Reusing values

  • A force of 2.5 newton pushes a rock with mass 1 kg to the left. Where is the rock after 1 second, 5 second and 15 second?

(1.0/2.5)*1*1/2

Redundant

(1.0/2.5)*5*5/2

(1.0/2.5)*15*15/2


Variables

Variables

  • We can use variables to refer to result from previous computation.

a = 1.0/2.5

a*1*1/2

a

0.4

a*5*5/2

a*15*15/2


Variables1

Variables

a = 1.0/2.5

  • A variableis used to refer to various data.

  • Use "=" to assign a value to a variable.

  • When we refer to that variable, we get the value that the variable is referring to.

0.4

a


Variables can be modified 1

Variables can be "modified" (1)

a = 10a * 5b = 3a + ba = 7a + ba = b + 5aa + b

50

13

10

8

11


Variables can be modified 2

Variables can be "modified" (2)

a = 10a = a + 1

11


Variables can be modified 3

Variables can be "modified" (3)

x = 10x = x * 2

20


Variables can be modified 4

Variables can be "modified" (4)

x = 10x = x * 2 + 5

25


Working on wing ide

Working onWing IDE

Shellor Console

After you type commands or expressions, the Python Interpreter evaluates them and prints out the output


Typing programs in wingide

Typing programs inWingIDE

Editing area

Any commands here are executed after you hit the "run" button.


A program

A program

  • A program is a sequence of commands (or statements)

  • a = 10b = a + 5a - bc = 12b = a + cc = a*ba + b + c1 + a - c

Try totype this intoWing IDE


Result

Result

  • Because the program does not have statements that output anything.

Empty


Printing

Printing

  • We can use function

    print

    to display results


A program1

A program

  • A program is a sequence of commands (or statements)

Add"print"to display the valueof the required expressions

  • a = 10b = a + 5print(a – b)c = 12b = a + cc = a*bprint(a + b + c)print(1 + a – c)


See the output after hitting run

See the output after hitting "Run"


Function calls

Function calls

  • print(10)

Function name

Arguments


What s going on

What's going on?

  • print(a + b * 2)

  • The expressions on the parameter list are evaluated before sending the result to the function.

  • 20

Assume that

a = 5

b = 10

  • 25

  • print(25)


A simple calculation program

A simple calculation program

  • We have the following coins

    • 5 one-baht coins

    • 7 ten-baht coins

    • 2 twenty-baht notes

    • 3 hundred-baht notes

How muchmoney do wehave ?

sum1 = 1 * 5sum10 = 10 * 7sum20 = 20 * 2sum100 = 100 * 3sum = sum1+sum5+sum20+sum100print(sum)


A simple program 2

A simple program(2)

  • Or we can even remove variablesum

sum1 = 1 * 5sum10 = 10 * 7sum20 = 20 * 2sum100 = 100 * 3print(sum1+sum5+sum20+sum100)


Meaningful names

Meaningful names

Comparethese twoprograms

a = 1 * 5b = 10 * 7c = 20 * 2d = 100 * 3e = a + b + c + dprint(e)

Theyperform thesame task

sum1 = 1 * 5sum10 = 10 * 7sum20 = 20 * 2sum100 = 100 * 3sum = sum1+sum5+sum20+sum100print(sum)

Which oneis easier to understand?


Suggestions

Suggestions

  • Write programs for people to read

    • At the very least, one of the audience is yourself.


Comments

Comments (#)

  • To make a program easier to read, we can add comments to the program

  • Everything after the # symbol is a comment.


A program with comments

A program with comments

# this program calculates total money# from the amount of each type of coins or# bank notes that you havesum1 = 1 * 5 # value of 1-baht coinssum10 = 10 * 7sum20 = 20 * 2sum100 = 100 * 3print(sum1+sum5+sum20+sum100)


Strings

Strings

  • A computer can work with many types of data.

  • Astring is another data type which is very important. It is a type for texts or messages.

  • Formally, a string is a sequence of characters.

”Hello

”Hello, world”


String constants

String constants

  • We can either use single or double quotes to specify strings, e.g.,

    • ”Hello”

    • ’World’

  • However, the starting quotes and the ending quotes must match.

  • We can also have special characters inside a string. They will start with backslash" \ ".


Examples 1

Examples (1)

print("hello")

hello

print('hello')

hello

print("I'm 9")

I'm 9

print('I'm 9')

ERROR

print('I\'m 9')

I'm 9

print("I\'m 9")

I'm 9


Examples 2

Examples (2)

print("123")

123

print(123)

123

print("12" + "3")

123

print(12 + 3)

15

print("12" + '3')

123

print("12" + 3)

ERROR


A slightly better program

A slightly better program

sum1 = 1 * 5sum10 = 10 * 7sum20 = 20 * 2sum100 = 100 * 3sum = sum1+sum5+sum20+sum100print("The total is",sum)

The total is 415


A slightly even better program

A slightly even better program

sum1 = 1 * 5sum10 = 10 * 7sum20 = 20 * 2sum100 = 100 * 3sum = sum1+sum5+sum20+sum100print("The total is",sum,"bath.")

The total is 415 bath.


Sidenote printing and new lines

Sidenote: printing and new lines

  • We can display data usingfunction print.

  • It will always add a new line at the end.

  • If we want to avoid the new line, we can add an additional option "end" to print.

print(10)print(20)print(10,end='')print(20)

10201020

This tells print to end this output with an empty string, instead of a new line.


Reading inputs

Reading inputs

  • We can use function input to read data from the user

    input

  • The function returns a string that the user types into the shell.


Examples in the python shell

Examples in the Python Shell

>>> name = input()

Somchai

>>> print("Hello", name)

Hello Somchai

>>> a = input()

10

>>> b = input()

100

>>> print(a+b)

10100


Remarks

Remarks

  • Consider this statement

    print(a+b)

  • Since both variables a andb are strings from function input. When we add two strings, we only get the concatenation of them.


Variables expressions and standard functions

?????

  • How are we going to do calculations when we can only read strings from the user?


Conversion

Conversion

  • We can use functionint, float, andstr to convert between various data types

int("10")

10

float("10")

10.0

float(10)

10.0

int(10.6)

10


Type conversion

Type conversion

int("10")+10

20

float("10")+10

20.0

float(10)+int(5)

15.0

str(10)+str(5)

105


Conversion between float and int 1

Conversion between float and int (1)

int(10.2)

10

int(10.9)

10

int(-10.1)

-10

Always return the integers without the fractional parts.


Conversion between float and int 2

Conversion between float and int (2)

We can also use function round that returns the closest integers.

round(10.2)

10

round(10.9)

11

round(-10.1)

-10


Adding two numbers

Adding two numbers

# This program adds two numbersastr = input()a = int(astr)bstr = input()b = int(bstr)print("The result is",a+b)


Nested function calls 1

Nested function calls (1)

  • Consider this part of the program

  • We use variableastr to refer to an input string. We then convert it to an integer and assign the result to variable a.

  • We can avoid using variable astr:

astr = input()a = int(astr)

a = int(input())


Nested function calls 2

Nested function calls (2)

  • This is how it works.

a = int(input())

input()

a

"12345"

int

12345

a = 12345


Two additional important functions

Two additional important functions


Money calculation improved

Money calculation (improved)

# This program calculates total amount# of money from numbers of bank notesp1 = int(input())sum1 = 1 * p1p5 = int(input())sum5 = 10 * p5p20 = int(input())sum20 = 20 * p20p100 = int(input())sum100 = 100 * p100sum = sum1+sum5+sum20+sum100print("The total is",sum,"bath.")


A prompt

A prompt

  • We can tell function input to display a prompt before reading input by providing a string argument to input

x = int(input("Enter X: "))print(x+10)

Enter X:

100

110


Thinking corner

Thinking corner

  • An object, initially sitting still, starts moving with an acceleration of a m/s2 for t seconds.

  • Write a program that reads the acceleration and the duration and computes the displacement.


Solution

Solution

a = float(input("Enter a: "))t = float(input("Enter t: "))print("Total distance =", a*t*t/2)


Thinking corner1

Thinking corner

Enter length in inch: 320It is 26 feet, 8 inch.

x = int(input("Enter length in inch"))xf = int(x/12)xi = x – xf * 12print("It is", xf, "feet,",xf,"inch.")


Volume calculation

Volume Calculation

  • Compute the volume of a cylinder

r

r2 x h

h


Variables expressions and standard functions

  • We can use22/7 (which is quite inaccurate).

  • We can use a closer estimation, in modulemath.

3.141592653589793


The math module

Themath module

  • In Python, functions are categorized into various groups, called modules. To use functions from a module, we have to declare that by using the import statement.

  • Then all functions can be referred to by prefixing with the module name.

import math

print("Pi is", math.pi)

3.141592653589793


Thinking corner2

Thinking corner

  • Write a program that reads r and h and compute the volume of a cylinder.

r

r2 x h

h


Solution1

Solution

import mathr = float(input("Enter r: "))h = float(input("Enter h: "))print("Volume =", math.pi*r*r*h)


Important functions in math module

Important functions inmath module


Another example

Another example

  • Projection

f

#don't forget toimport math#recall that the angle must be in radianr = t * math.pi/180fy = f*math.sin(r)fx = f * math.cos(r)

import math# radian anglesfy = f*math.sin(t)fx = f * math.cos(t)

t


  • Login