习题 27
逻辑术语
and 与
or 或
not 非
!= 不等于
== 等于
>= 大于等于
<= 小于等于
True 真
False 假
习题 28
print(True and True)
print(False and True)
print(1 == 1 and 2 == 1)
print("test" == "test")
print(1 == 1 or 2 != 1)
print(True and 1 == 1)
print(False and 0 != 0)
print(True or 1 == 1)
print("test" == "testing")
print(1 != 0 and 2 == 1)
print("test" != "testing")
print("test" == 1)
print(not (True and False))
print(not (1 == 1 and 0 != 1))
print(not (10 == 1 or 1000 == 1000))
print(not (1 != 10 or 3 == 4))
print(not ("testing" == "testing" and "Zed" == "Cool Guy"))
print(1 == 1 and not ("testing" == 1 or 1 == 0))
print("chunky" == "bacon" and not (3 == 4 or 3 == 3))
print(3 == 3 and not ("testing" == "testing" or "Python" == "Fun"))
运行结果:
D:\Anaconda3\python.exe G:/python3_project/week_one/ex28.py
True
False
False
True
True
True
False
True
False
False
True
False
True
False
False
False
True
True
False
False
Process finished with exit code 0
习题 29
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 drooled 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.")
运行结果:
D:\Anaconda3\python.exe G:/python3_project/week_one/ex29.py
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.
Process finished with exit code 0
习题 30
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.")
运行结果:
D:\Anaconda3\python.exe G:/python3_project/week_one/ex30.py
We should take the cars.
Maybe we could take the buses.
Alright, let's just take the buses.
Process finished with exit code 0
习题 31
print("You enter a dark room with two 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. 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("Well, doing %s is probably better. Bear runs away." % bear)
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. 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!")
运行结果:
D:\Anaconda3\python.exe G:/python3_project/week_one/ex31.py
You enter a dark room with two 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.
> 2
The bear eats your legs off. Good job!
Process finished with exit code 0
知识点
- input() 函数提示用户输入一些字符,并返回字符串类型。
习题 32
the_count = [1, 2, 3, 4, 5]
fruits = ['apples', '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("This is count %d" % number)
# same as above
for fruit in fruits:
print("A fruit of type: %s" % fruit)
# also we can go through mixed lists too
# notice we have to use %r since we don't know what's in it
for i in change:
print("I got %r" % 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("Adding %d to the list" % i)
# append is a function that lists understand
elements.append(i)
# now we can print them out too
for i in elements:
print("Elements was: %d." % i)
运行结果:
D:\Anaconda3\python.exe G:/python3_project/week_one/ex32.py
This is count 1
This is count 2
This is count 3
This is count 4
This is count 5
A fruit of type: apples
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
Elements was: 0.
Elements was: 1.
Elements was: 2.
Elements was: 3.
Elements was: 4.
Elements was: 5.
Process finished with exit code 0
知识点
- range() 函数返回一个左闭右开([left,right))的序列数
- for i in x(x 一定要是个可迭代的对象)
习题 33
i = 0
number = []
while i < 6:
print("At the top i is %d" % i)
number.append(i)
i += 1
print("Numbers now: %r" % number)
print("At the bottom i is %d" % i)
print("The numbers: ")
for num in number:
print(num)
运行结果:
D:\Anaconda3\python.exe G:/python3_project/week_one/ex33.py
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
Process finished with exit code 0
习题 34
animals = ['bear', 'python', 'peacock', 'kangaroo', 'whale', 'platypus']
print(animals[0])
print(animals[1])
print(animals[2])
print(animals[3])
print(animals[4])
print(animals[5])
运行结果:
D:\Anaconda3\python.exe G:/python3_project/week_one/ex34.py
bear
python
peacock
kangaroo
whale
platypus
Process finished with exit code 0
知识点
- 列表的索引是从 0 开始,列表的最后一个值对应的索引值是列表的长度 -1