习题27——记住逻辑关系
and:与
or:或
not:非
!=:不等于
== 等于
》=:大于等于
《=:小于等于
True:真
False:假
习题28——布尔表达式练习
无源代码
习题29——if语句
源代码:
people = 20
cats = 30
dogs = 15
if people < cats:
print("Too many cats! The world is doomed!")
if people > cats:
print("Not many cats! The world is saved!")
if people < dogs:
print("The world is droolde on!")
if people > dogs:
print("The world is dry!")
dogs += 5
if people >= dogs:
print("People are greater than or equal to dogs.")
if people <= dogs:
print("People are less than or equal to dogs.")
if people == dogs:
print("People are dogs.")
运行结果:
Too many cats! The world is doomed! The world is dry! People are greater than or equal to dogs. People are less than or equal to dogs. People are dogs.
习题30——else 和 if
源代码:
people = 30
cars = 40
trucks = 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 trucks > cars:
print("That's too many trucks.")
elif trucks < cars:
print("Maybe we could take the trucks.")
else:
print("We still can't decide.")
if people > trucks:
print("Alright, let's just take the trucks.")
else:
print("Fine, let's stay home then.")
运行结果:
We should take the cars. Maybe we could take the trucks. Alright, let's just take the trucks.
习题31——作出决定
源代码:
print("""You enter a dark room with too doors.
Do you go through door #1 or door #2?""")
door = input(">")
if door == "1":
print("There's a giant bear here eating a cheese cake.")
print("What do you do?")
print("1. Take the cake.")
print("2. Scream at the bear.")
bear = 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(f"Well, doing {bear} is probably better.")
print("Bear runs away.")
elif door == "2":
print("You stare into the endless abyss at Cthulhu's retina.")
print("1. Blueberries.")
print("2. Yellow jacket clothespins.")
print("3. Understanding revolvers yelling melodies.")
insanity = input(">")
if insanity == "1" or insanity == "2":
print("Your body survives powered by a mind of jello.")
print("Good job!")
else:
print("The insanity rots your eyes into a pool of muck.")
print("Good job!")
else:
print("You stumble around and fall on a knife and die. Good job!")
运行结果:
You enter a dark room with too doors. Do you go through door #1 or door #2? >1 There's a giant bear here eating a cheese cake. What do you do? 1. Take the cake. 2. Scream at the bear. >3 Well, doing 3 is probably better. Bear runs away.
习题32——循环和列表
源代码:
the_count = [1, 2, 3, 4, 5]
fruits = ['apple', 'oranges', 'pears', 'apricots']
change = [1, 'pennies', 2, 'dimes', 3, 'quarters']
# this first kind of for-loop goes through a list
for number in the_count:
print(f"This is count {number}")
# same as above
for fruit in fruits:
print(f"A fruit of type: {fruit}")
# also we can go through mixed lists too
# notice we have to use {} since we don't know what's in it
for i in change:
print(f"I got {i}")
# we can also build lists, first start with an empty one
elements = []
# then use the range function to do 0 to 5 counts
for i in range(0,6):
print(f"Adding {i} to the list.")
# append is a function that lists understand
elements.append(i)
# now we can print them out too
for i in elements:
print(f"Element was: {i}")
运行结果:
This is count 1 This is count 2 This is count 3 This is count 4 This is count 5 A fruit of type: apple A fruit of type: oranges A fruit of type: pears A fruit of type: apricots I got 1 I got pennies I got 2 I got dimes I got 3 I got quarters Adding 0 to the list. Adding 1 to the list. Adding 2 to the list. Adding 3 to the list. Adding 4 to the list. Adding 5 to the list. Element was: 0 Element was: 1 Element was: 2 Element was: 3 Element was: 4 Element was: 5
习题33——while 循环
源代码:
i = 0
numbers = []
while i < 6:
print(f"At the top i is {i}")
numbers.append(i)
i = i + 1
print("Numbers now: ",numbers)
print(f"At the bottom i is {i}")
print("The numbers: ")
for num in numbers:
print(num)
运行结果:
At the top i is 0 Numbers now: [0] At the bottom i is 1 At the top i is 1 Numbers now: [0, 1] At the bottom i is 2 At the top i is 2 Numbers now: [0, 1, 2] At the bottom i is 3 At the top i is 3 Numbers now: [0, 1, 2, 3] At the bottom i is 4 At the top i is 4 Numbers now: [0, 1, 2, 3, 4] At the bottom i is 5 At the top i is 5 Numbers now: [0, 1, 2, 3, 4, 5] At the bottom i is 6 The numbers: 0 1 2 3 4 5
习题34——访问列表的元素
无源代码
习题35——分支和函数
源代码:
from sys import exit
def gold_room():
print("This room is full of gold. How much do you take?")
choice = input("> ")
if "0" in choice or "1" in chocie:
how_much = int(choice)
else:
dead("Man, learn to type a number")
if how_much < 50:
print("Nice, you're not greedy, you win!")
exit(0)
else:
dead("You greedy bastard!")
def bear_room():
print("There is a bear here.")
print("The bear has a bunch of honey.")
print("The fat bear is in front of another door.")
print("How are you going to move the bear?")
bear_moved = False
while True:
choice = input("> ")
if choice == "take honey":
dead("The bear looks at you the slaps your face off.")
elif choice == "taunt bear" and not bear_moved:
print("The bear has moved from the door.")
print("You can go through it now.")
bear_moved = True
elif choice == "taunt bear" and bear_moved:
dead("The bear gets pissed off and chews your leg off.")
elif choice == "open door" and bear_moved:
gold_room()
else:
prrint("I got no idea what that means.")
def cthulhu_room():
print("Here you see the great evil Cthulhu.")
print("He, it, whatever stares at you and you go insane.")
print("Do you flee for your life or eat your head?")
choice = input("> ")
if "flee" in choice:
start()
elif "head" in choice:
dead("Well that was tasty!")
else:
cthulhu_room()
def dead(why):
print(why,"Good job!")
exit(0)
def start():
print("You are in a dark room.")
print("There is a door to your right and left.")
print("Which one do you take?")
choice = input("> ")
if choice == "left":
bear_room()
elif choice == "right":
cthulhu_room()
else:
dead("You stumble around the room untill you starve.")
start()
运行结果:
You are in a dark room. There is a door to your right and left. Which one do you take? > left There is a bear here. The bear has a bunch of honey. The fat bear is in front of another door. How are you going to move the bear? > taunt bear The bear has moved from the door. You can go through it now. > open door This room is full of gold. How much do you take? > 150 You greedy bastard! Good job!
习题36——设计和调试
if语句的规则:
1、每一条if语句必须包含一个else;
2、如果这个else永远都不应该被执行到,因为它本身没有任何意义,那你必须在else语句后面使用一个叫die的函数,让它打印出出错消息并且“死”给你看;
3、if语句的嵌套不要超过两层,最好尽量保持只有一层;
4、将if语句当作段落来对待,其中的每一个if、elif和else组合就跟一个段落的句子组合一样。在这种组合的最前面和最后面留一个空行以作区分;
5、你的布尔测试应该很简单,如果它们很复杂,你需要在函数里将它们的运算事先放到一个变量里,并且为变量取一个好名字。
循环的规则:
1、只有在循环永不停止时使用“while循环”,这意味着你可能永远都用不到。这一条只在Python中成立,其他语言另当别论;
2、其他类型的循环都使用for循环,尤其是在循环的对象数量固定或者有限的情况下。
本文含有隐藏内容,请 开通VIP 后查看