这几节主要是复杂分支,注意我们在写代码是逻辑判断的嵌套最好不要超过三层(自我感觉)。
###ex30.py
people = 30
cars = 40
buses = 15
if cars > people :
print "We should take the cars."
elif cars < people :
print "We should not take the cars."
else :
print "We can't decide."
if buses > cars :
print "That's too many buses."
elif buses < cars :
print "Maybe we could take the buses."
else :
print"We still can't decide."
if people > buses :
print "Alright, let's just take the buses."
else :
print "Fine, let's stay home then."
###ex31.py
print "You enter a dark room with two doors. Do you go through door #1 or door #2?"
door = raw_input("> ")
if door == "1" :
print "There's a giant bear here eating a cheese cake. What do you do?"
print "1.Take the cake."
print "2.Scream at the bear."
bear = raw_input("> ")
if bear == "1" :
print "The bear eats your face off. Good job!"
elif bear == "2" :
print "The bear eats your legs off. Good job!"
else :
print "Well, doing %s is probably better. Bear runs away." % bear
elif door == "2" :
print "You stare into the endless abyss at Cthulhu's retuna."
print "1.Blueberries."
print "2.Yellow jacket clothespins."
print "3.Understanding revolvers yelling melodies."
insanity = raw_input("> ")
if insanity == "1" or insanity == "2" :
print "Your body survives powered by a mind of jello. Good job!"
else :
print "The insanity rots your eyes into a pool of muck. Good job!"
else :
print "You stumble around and fall on a knife and die. Good job!"
###ex32.py
the_count = [1,2,3,4,5]
fruits = ['apples','oranges','pears','apricots']
change = [1 , 'pennies' , 2 , 'dimes' , 3 , 'quarters']
for number in the_count :
print "This is count %d " %number
for fruit in fruits :
print "A fruits of type : %s" %fruits
for i in change :
print "I got %r" %i
elements = []
for i in the_count :
print "Adding %d to the list." %i
elements.append(i)
for i in elements :
print "Element was : %d "%i
###ex33.py
def f(j,numbers):
i = 0
while ( i < j ) :
print "At the top i is %d" %i
numbers.append(i)
i = i + 1
print"Numbers now: ",numbers
print"At the bottom i is %d" %i
numbers = []
j = input("> ")
f(j,numbers)
print "The numbers : "
for num in numbers :
print num
###ex38.py
# create a mapping of state to abbreviation
states = {
'Oregon': 'OR',
'Florida': 'Fl',
'California': 'CA',
'New York': 'NY',
'Michigan': 'MI'
}
# create a basic set of states and some cities in them
cities = {
'CA': 'San Francisco',
'MI': 'Detroit',
'FL': 'Jacksonville'
}
# add some more cities
cities['NY'] = 'New York'
cities['OR'] = 'Portland'
# print out some cities
print '-' * 10
print "NY State has: ", cities['NY']
print "OR State hsa: ", cities['OR']
#print some states
print '_' * 10
print "Michigan's abbreviation is: ", states['Michigan']
print "Florida's abbreviation is: ", states['Florida']
#print every state abbreviation
print '_' * 10
for state, abbrev in states.items():
print "%s is abbreviated %s" % (state, abbrev)
###PS
实际上学习到这里已经可以读懂大部分网上Python代码了,剩下Python面向对象的部分反而没有Java或者C++好用(个人觉得)。