OLD_Intro_to_Python

Download Report

Transcript OLD_Intro_to_Python

Introduction to Python
Basics of the Language
Install Python
• Find the most recent distribution for your
computer at:
http://www.python.org/download/releases/
• However, for this class, download and execute
Python MSI installer for your platform
– For version 2.7
• This version works with your Python textbook!
– You may need to be logged in as administrator to
your computer to run the installation
Modes of Interaction with Python
• You can interact with the Python interpreter through two built-in
modes:
– Basic (command line)
– IDLE (may need to download other software!)
• Command line mode:
– You can find and double click the Python.exe executable (e.g.,
python27) in the downloaded folder
– Make sure to right click it, and then create a shortcut to it, and pin it to
the taskbar!
– Click the icon on your taskbar to start the command line
You will get the
>>> Python prompt
Type exit at the command prompt to get out of it!
>>> exit
//or ctrl z
– Note: you can use the Home, Pg up, Pg dn, and End keys, to scroll
through previous entries, and repeat them by pressing the Enter key!
Basic Command Line
IDLE
• This is the integrated development environment for
Python
• Involves interactive interpreter with editing and
debugging capabilities
• You can find and double click the Pythonw.exe
executable (e.g., python27) in the downloaded folder
• Pin it to the taskbar
Python IDLE Shell Window
• The IDLE (Python shell window) is more convenient than the
basic python command line
• Provides automatic indentation and highlights the code
• Can use the Home, Pg up, Pg dn, and End keys to search the
buffer in your session
Learn Basic parts of Python
• Like other languages, Python has many data types
– These can be manipulated with operators, functions, and
methods
• We can also make our own types (classes) and instantiate and
manipulate them with operators, functions, and our own
methods
• It also has conditional and iterative control, e.g.:
– if-elif-else
– while loop
– for loop
Python Naming Style
• Function name is lower case
def add (): #adds numbers; returns the result; ends with :
• Variable name is lower case (are case sensetive)
inputFieldName
fc
#holds a feature class as in:
fc=“Roads.shp”
Note: variables Road and road are different!
• Class name is UpperCamelCase
Class StrikeSlipFault
• Constant is all caps, e.g. PI, SPREADING_RATE
• Indentation: 4 spaces per level, do not use tabs
– IDLE does it for you!
Data types - Practice
10/3 = 3, but 10/3.0 = 3.33333
The // operator is for integer division (quotient without remainder).
10//3 = 3 and 4//1.5 = 2, and 13//4 = 3
Use Built in functions
Strings
Strings …
Strings …
Formatting strings with the
string modulus operator %
Booleans
List
x [:-2] -> [‘hydroxide’, ‘phosphate’, ‘carbonate’]
# up to, but not including index -2, i.e., gets rid of the last two
x [2:] -> [‘carbonate’, ‘oxide’, ‘silicate’] # values from position 2 to the end (inclusive)
List Index
P
0
-6
lang = [‘PYTHON’]
lang [-2] = ‘O’
lang [2:5] = ‘THO’
lang [:3] = ‘PYT’
lang [-2:-4] = ‘TH’
lang [-3:] = ‘HON’
Y
1
-5
T
2
-4
H
3
-3
O
4
-2
N
5
-1
6
# the whole ‘lang’ list
# at -2
# between 2 and 5, not including 5
# up to 3, not including 3
# from -4 and -2
# from -3 to the end
Lists have mixed types
• Lists are like Java arrays
List’s Built-in Functions
Sets: unordered collection of objects
Sets
Sets are unordered collection of objects and can be changed
Duplicates are removed, even when you add them
The ‘in’ keyword checks for membership in the set
if-elif-else
>>> if condition1:
body1
elif condition2:
body2
…
else condition:
bodyn
# use colon after any statement!
# do this if condition is true. Notice the indentation
# notice the colon
# otherwise do this
# put more elifs if needed
# otherwise, if no condition was true except this, do bodyn
The While Loop
>>> while (condition):
body
else:
post-code
•
# NOTE: condition expression evaluates to true or false
# If condition evaluates to true (x<y in the example), it will execute
# optional, rarely used!
# If condition evaluates to false, post-code will execute
Note: When typing in the IDLE, press enter after (x=x+2) (while the statement is highlighted), and
then press backspace key to go to the beginning of line, then press enter to execute the loop!
While loop …
The r and n are said to be local variables because they are declared inside the function.
If you want them to be available to other functions outside, we can declare them to be
global, for example:
global r = 1
The For Loop
•
It iterates in order over the items in the iterable sequence (e.g., list, tuple, string)
for item in sequence: # starts from the first element of the sequence
body
# if there is an item, body will execute; it goes to the second item
else:
# is optional (rarely used as in while loop!)
post-code
The For Loop
• The loop searches the list one item at a time. For each item in the
list it checks to see if it is an integer, if not an integer, it skips it, and
then checks to see if it divides by eight without a remainder, if it
divides by 8, then it prints the message and gets out of the loop!
Loop with specific indices
Function Definition
def function_name (arg1, arg2, …)
body
# arg means argument or parameter!
# Sometimes we pass a known value for one of the arguments:
def function_name (arg1, arg2=default2, arg3)
# e.g., power (x, y=3)
body
Function …
input () function
Built in Numeric Functions
• abs, divmod, float, hex, long, max, min, oct,
pow, round
# there are a lot more for trigonometry, etc.
• ‘none’ is a special data type for empty value
– e.g., when a function does not return a value
– It is used as a placeholder