Notes of Py for informatics

来源:互联网 发布:手机噪声检测软件 编辑:程序博客网 时间:2024/06/06 02:23

Chapter 2 Var, exp and statements

2.1 Type Conversion

sval = '123'type(sval)ival = int(sval)print ival+1


2.2 User Input

nam = raw_input('Who are you?') # the screen shows 'Who are you?', and the input value is saved in namprint 'Welcome', nam# if we want to read a number from the user. We must convert it from a string to a number using a type conversion functioninp = raw_input('Europe Floor?')print 'American Floor:', int(inp)+1


Chapter 3 Conditional execution

3.1 One Way Decision & Indentation

if x == 6:   print 'is 6'   print 'is still 6'
Turn off tabs: If you mix tabs and spaces, you may get 'indentation errors'.

3.2 Two Way Decisions

if x > 2:   print 'Bigger'else:   print 'Smaller'


3.3 Muti-way

if x < 2:   print 'small'elif x < 10:     #elif -> else if   print 'medium'else:   print 'large'print 'all done'

3.4 try / except structure

You surround a dangerous section of code with try and except.

If the code in the try works - the except is skipped.

If the code in the except works - the try is skipped.

astr = 'Hello Bob'try:    istr = int(astr)  # if the input is 'qwe', then the 'try' can not be executedexcept:    istr = -1
comment: have a try. It's totally different from the if/else. It has a network. 'a blow up' stuff.
example:

rawstr = raw_input('Enter a number:')try:    ival =int(rawstr)except:    ival = -1if ival > 0:    print 'Nice work'else:    print 'Not a number'

3.5 if not

Chapter 4 Functions

two types of functions:

build-in functions

functions that we define ourselves and then use

no arguments:

def print_lyrics():    print "I sleep all night and I work all day"


arguments:

def greet(lang):    if lang == 'es':       print 'Hola'....


return value:

def greet(lang):    if lang == 'es':       return 'Hola'....print greet('es')


multiple parameters / Arguments:

def addtwo(a,b):    added = a + b    return added
void function


Chapter 5 Loops and Iteration

5.1 breaking out of a loop

while True:    line = raw_input('>')    if line == 'done':        break    print lineprint 'Done!'
break: end the current loop and jump to the statement immediately following the loop


5.2 continue

the continue statement ends the current iteration andjumps to the top of the loop and starts the next iteration


5.3 Indefinte Loops & definite Loops

Indefinte Loops: While loops are called "indefinite loops" because they keep going until a logical condition becomesFalse.  while

Defintie Loops: finite list of things to do. For

for i in [5,4,3,2,1]:    print i print 'Blastoff!'
friends = ['Joe','Sally','Mike']for friend in friends:    print 'Happy New Year:', friendprint 'Done!'


5.4 Loop Idioms
smallest = None...if smallest is None: # trigger the first iteration  #if value is None/True/False is ok # if value is 4     ..elif value < smallest:    smallest = value


Chapter 6 Strings

both quotes: 'Hello' and "Hello" are ok

'+' means concatenate

6.1 Look inside strings

fruit = 'banana'letter = fruit[1]print letter

output:

a

you will get a python error if you attempt to indexbeyond the end of a string

len(fruit)
# approach1
index = 0while index < len(fruit):    ...    index = index + 1
# approach2
for letter in fruit:     ...# I love the 'in'


6.2 Slicing Strings: colon operator

s = 'Monty Python'print s[0:4]  #starts from1, up to but not including 4

output:

Mont

print s[:2]print s[8:]print s[:]

output:

MothonMonty Python


6.3 Using in as an operator

print 'nan' in fruit

Output:

True


word < 'banana'word == 'banana'#comparison


6.4 String Library

xxx.function()

These functions do not modify the original string, instead theyreturn a new string that has been altered.  =

greet = 'Hello Bob'zap = greet.lower()print zap

output:

hello bob


print dir(greet)['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']


Find

pos = fruit.find('na')print pos
output:

2

pos = fruit.find('a',pos+1) #starts from the position of the next character
find() finds the first occurance of the substring

if the substring is not found, find() returns-1

Replace

nstr = greet.replace('Bob','Jane')print nstrHello Jane

Stripping Whitespace

Sometimes we want to take a string and remove whitespace at the beginning and/or end

lstrip() #left

rstrip() #right

strip() #all

greet = '     Hello Bob'print greet.strip()     Hello BobHello Bob

Prefixes

print greet.startswith(' ')True


                                             
1 0