5-1 条件测试 :编写一系列条件测试;将每个测试以及你对其结果的预测和实际结果都打印出来。你编写的代码应类似于下面这样:
car = 'subaru'
print("Is car == 'subaru'? I predict True.")
print(car == 'subaru')
print("\nIs car == 'audi'? I predict False.")
print(car == 'audi')
car = 'subaru'
print("Is car == 'subaru'? I predict True.")
print(car == 'subaru')
print("\nIs car == 'audi'? I predict False.")
print(car == 'audi')
- 详细研究实际结果,直到你明白了它为何为True 或False 。
- 创建至少10个测试,且其中结果分别为True 和False 的测试都至少有5个。
course = 'Python'
print("Is course == 'Python'? I predict True.")
print(course == 'Python')
print("\nIs course == 'pyth'? I predict False.")
print(course == 'pyth')
print("\nIs course == 'python'? I predict False.")
print(course == 'python')
print("\nIs course == 'PYTHON'? I predict False.")
print(course == 'PYTHON')
course = 'python'
print("\nIs course == 'python'? I predict False.")
print(course == 'python')
course = 'PYTHON'
print("\nIs course == 'python'? I predict False.")
print(course == 'PYTHON')
laptop = 'Dell'
print("\nIs laptop == 'Dell'? I predict True.")
print(laptop == 'Dell')
print("\nIs laptop == 'Apple'? I predict True.")
print(laptop == 'Apple')
food = 'beef'
print("\nIs food == 'beef'? I predict True.")
print(food == 'beef')
print("\nIs food == 'fish'? I predict True.")
print(food == 'fish')
5-2 更多的条件测试:你并非只能创建10个测试。如果你想尝试做更多的比较,再编写一些测试,并将它们加入到conditional _ tests.py 中。对于下面列出的各种测试,至少编写一个结果为True 和False 的测试。
- 检查两个字符串相等和不等。
- 使用函数lower() 的测试。
- 检查两个数字相等、不等、大于、小于、大于等于和小于等于。
- 使用关键字and 和or 的测试。
- 测试特定的值是否包含在列表中。
- 测试特定的值是否未包含在列表中。
word1 = 'Python'
word2 = 'python'
print("world1:Python; word2:python")
print("If word1 == word2?")
print(word1 == word2)
print("If word1 != word2?")
print(word1 != word2)
print("If word1.lower() == word2?")
print(word1.lower() == word2)
num1 = 2
num2 = 3
print("num1:2; num2:3")
print("If num1 > num2?")
print(num1>num2)
print("If num1 <= num2?")
print(num1<=num2)
print("If num1 > 2 or num2 > 2?")
print(num1 > 2 or num2 > 2)
print("If num1 > 2 and num2 > 2?")
print(num1 > 2 and num2 > 2)
course = ['Math','English']
print(course)
print("If 'Math' in course?")
print('Math' in course)
print("If 'Python' in course?")
print('Python' in course)
5-5 外星人颜色#3 :将练习5-4中的if-else 结构改为if-elif-else 结构。
- 如果外星人是绿色的,就打印一条消息,指出玩家获得了5个点。
- 如果外星人是黄色的,就打印一条消息,指出玩家获得了10个点。
- 如果外星人是红色的,就打印一条消息,指出玩家获得了15个点。
- 编写这个程序的三个版本,它们分别在外星人为绿色、黄色和红色时打印一条消息。
alien_color = 'red'
if alien_color == 'green':
print("alien_color == 'green'")
print("Congratulation! You've gotten 5 points!")
elif alien_color == 'yellow':
print("alien_color == 'yellow'")
print("Congratulation! You've gotten 10 points!")
elif alien_color == 'red':
print("alien_color == 'red'")
print("Congratulation! You've gotten 15 points!")
5-7 喜欢的水果 :创建一个列表,其中包含你喜欢的水果,再编写一系列独立的if 语句,检查列表中是否包含特定的水果。
- 将该列表命名为favorite_fruits ,并在其中包含三种水果。
- 编写5条if语句,每条都检查某种水果是否包含在列表中,如果包含在列表中,就打印一条消息,如“You really like bananas!”。
favorite_fruits = ["apple", "peach", 'pear']
if 'apple' in favorite_fruits:
print("You really like bananas!")
if 'banana' in favorite_fruits:
print("You really like bananas!")
if 'grape' in favorite_fruits:
print("You really like bananas!")
if 'peach' in favorite_fruits:
print("You really like bananas!")
if 'orange' in favorite_fruits:
print("You really like bananas!")
5-8 以特殊方式跟管理员打招呼 :创建一个至少包含5个用户名的列表,且其中一个用户名为'admin' 。想象你要编写代码,在每位用户登录网站后都打印一条问候消息。遍历用户名列表,并向每位用户打印一条问候消息。
- 如果用户名为'admin' ,就打印一条特殊的问候消息,如“Hello admin, would you like to see a status report?”。
- 否则,打印一条普通的问候消息,如“Hello Eric, thank you for logging in again”。
users = ['admin','lisa','bob','mike','lily']
for user in users:
if user == 'admin':
print("Hello admin, would you like to see a status report?")
else:
print("Hello " + user + ", thank you for logging in again")
5-11 序数 :序数表示位置,如1st和2nd。大多数序数都以th结尾,只有1、2和3例外。
- 在一个列表中存储数字1~9。
- 遍历这个列表。
- 在循环中使用一个if-elif-else 结构,以打印每个数字对应的序数。输出内容应为1st 、2nd 、3rd 、4th 、5th 、6th 、7th 、8th 和9th ,但每个序数都独占一行。
num = list(range(1,10))
for value in num:
print(value)
for value in num:
if value == 1:
print(str(value) + "st")
elif value == 2:
print(str(value) + "nd")
elif value == 3:
print(str(value) + "rd")
else:
print(str(value) + "th")
2018.03.24 [05]