python programming - ii. the basics

Post on 06-May-2015

1.464 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Feel free to download the material for offline viewing later, better images' resolutions, and crispier fonts.

TRANSCRIPT

Engr. Ranel O. Padon

PYTHON PROGRAMMINGII. The Basics

PYTHON PROGRAMMING TOPICS

I • Introduction to Python Programming

II • Python Basics

III • Controlling the Program Flow

IV • Program Components: Functions, Classes, Modules, and Packages

V • Sequences (List and Tuples), and Dictionaries

VI • Object-Based Programming: Classes and Objects

VII • Customizing Classes and Operator Overloading

VIII • Object-Oriented Programming: Inheritance and Polymorphism

IX • Randomization Algorithms

X • Exception Handling and Assertions

XI • String Manipulation and Regular Expressions

XII • File Handling and Processing

XIII • GUI Programming Using Tkinter

RUNNING A COMPUTER PROGRAM

Source Translator Target

Low-Level Language Assembler

Machine CodeHigh-Level Language

Compiler

Interpreter

RUNNING A PYTHON PROGRAM

to write & run a Python program you need a Text Editor

and a Python Interpreter (preferably Version 2.x

since version 3.x is not yet mainstream)

Possible Ways (Common Ones)

1. Notepad++/Sublime Text and command prompt

2. Notepad++/Sublime Text and IDLE

3. IDLE

4. PyScripter, PyCharm, Aptana Studio, NINJA IDE…

HELLO WORLD

as a salute to all programmers in the world, beginning

programmers usually print in the console the infamous Hello

World mystical line

print “Hello World”

HELLO WORLD IN 2 LINES

print “Hello”print “World”

in Python, the print statement will always

move the cursor to the next line after printing

HELLO WORLD, SUPRESSING NEWLINES

print “Hello”,print “World”

A comma (,) will suppress the auto newline insertion

in print statements; it will add a space instead.

FORCING NEW LINES

print “Hello \nWorld \nPo!”

\n = new line

FORCING NEW LINES & TABS

print “Hello \n\tWorld \n\tPo!”

\t = tab

ESCAPE SEQUENCES

print “Hello \n\tWorld \n\tPo!”

\t = tab

EXERCISE

Using Escape Sequences, print the following, including the

punctuations:

“Mahal ko po si Migueeeel!”, sabi ni Amanda.

“Hindi maari yan, lalo na’t si Miguel ay isang Halimaw!”, ang

tugon ng kanyang ina.

COMMENTS

comments don’t do anything except to serve as a

documentation part of a program

use comments as often as you can because programmers

tend to forget what they’ve programmed after a month or so

#this is a commentprint ‘Magandang Araw Po!’

#this function computes the sum of two integersdef sum(x, y):

...

RAW INPUT, TEXT

x = raw_input(“Unang Salita:”)y = raw_input(“Pangalawang Salita:”)

print x + y

raw_input is a built-in function; it’s included in the standard

library & returns a string data type

RAW INPUT, TEXT TO INTEGER

x = int(raw_input(“Unang Numero:”))y = int(raw_input(“Pangalawang Numero:”))

print x + y

int is a built-in function; it’s included in the standard library &

converts a string to integer

INPUT, AUTO TEXT TO INTEGER

x = input(“Unang Numero:”)y = input(“Pangalawang Numero:”)

print x + y

input is a built-in function; it’s included in the standard library

& converts a string number to integer.

VARIABLE ASSIGNMENT

x = input(“Unang Numero:”)y = input(“Pangalawang Numero:”)

sum = x + y

print “Ang sum po ay”, sum

results could be printed directly or assigned to a variable

before printing

MEMORY CONCEPTS

x = raw_input(“Unang Numero:”)x = int(x)

print x

ARITHMETIC OPERATIONS

TRUE DIVISION RESULT

TRUE DIVISION RESULT

THE PEMMDAS PRECEDENCE

THE PEMMDAS PRECEDENCE

THE PEMMDAS PRECEDENCE

ASSOCIATIVITY

import arcpy

input_file = "D:/Project/PRTSAS/Geodatabases/ \Market_Values/Pasong Tamo Creek/ \GIS_Computed_Market_Values.shp"

rows = arcpy.SearchCursor(input_file)

STRING FORMATTING

STRING FORMATTING

1. Rounding-off floating-point values

2. Representing numbers in exponential notation

3. Aligning a column of numbers

4. Right-justifying and left-justifying outputs

5. Inserting characters or strings at precise locations

6. Displaying with fixed-size field widths and precision

STRING FORMATTING

STRING FORMATTING

STRING FORMATTING

STRING FORMATTING

STRING CONVERSION SPECIFIER

STRING CONVERSION SPECIFIER

RELATIONAL OPERATOR

COMMON ERROR

Error: inserting spaces between the pair of symbols:

==, !=, >= and <=

COMMON ERROR

reversing the order of the pair of operators in any of the operators:

!=, <>, >= and <=

Error: writing them as =!, ><, => and =<

COMMON ERROR

Confusing the equality operator == with the assignment symbol =

is an error.

The equality operator should be read “is equal to” and the

assignment symbol should be read “gets,” “gets the value of” or

“is assigned the value of.”

In Python, the assignment symbol causes a syntax error when

used in a conditional statement.

KEYWORDS/RESERVED WORDS

They cannot be used as identifiers.

RELATIONAL OPERATOR

RELATIONAL OPERATOR

RELATIONAL OPERATOR

PROPER INDENTATION

COMMON ERROR

Failure to insert a colon (:) in an if structure.

Failure to indent the body of an if structure.

LINE CONTINUATION

A lengthy statement may be spread over several lines with the

backslash (\) line continuation character.

If a single statement must be split across lines, choose breaking

points that make sense, such as after a comma in a print

statement or after an operator in a lengthy expression.

LINE CONTINUATION

import arcpy

input_file = "D:/Project/PRTSAS/Geodatabases/ \Market_Values/Pasong Tamo Creek/ \GIS_Computed_Market_Values.shp"

rows = arcpy.SearchCursor(input_file)

PRACTICE EXERCISE 1

PRACTICE EXERCISE 2

Write a program that requests the user to enter two numbers and

prints the sum, product, difference and quotient of the two numbers.

PRACTICE EXERCISE 3

Write a program that reads in the radius of a circle and prints the

circle’s diameter, circumference and area. Use the constant value

3.14159 for π. Do these calculations in output statements.

PRACTICE EXERCISE 4

Write a program that reads in two integers and determines and

prints whether the first is a multiple of the second.

PRACTICE EXERCISE 5

Write a program that reads in a 3-digit number, dissects the number

and prints the 3 individual numbers.

For example, 214 will be printed as:

Hundreds: 2

Tens: 1

Ones: 4

PRACTICE EXERCISE 6

Write a program that reads in 3 integers and determines and prints

the largest number.

PRACTICE EXERCISE 7

Write a program that reads in 3 integers and determines and prints

the smallest & largest numbers.

The Amusing Evolution of a Programmer

http://www.ariel.com.au/jokes/The_Evolution_of_a_Programmer.html

REFERENCES

Deitel, Deitel, Liperi, & Wiedermann - Python: How to Program (2001).

Disclaimer: Most of the images/information used here have no proper source

citation, and I do not claim ownership of these either. I don’t want to reinvent the

wheel, and I just want to reuse and reintegrate materials that I think are useful or

cool, then present them in another light, form, or perspective. Moreover, the

images/information here are mainly used for illustration/educational purposes

only, in the spirit of openness of data, spreading light, and empowering people

with knowledge.

top related