教材第5章课后练习
5-1 条件测试
car = 'subaru'
print('Is car == "subaru"? I predict True')
print(car == 'subaru')
print('Is car == "audi"? I predict False')
print(car == 'audi')
number = 3.0
print('Is number == 3.0? I predict True')
print(number == 3.0)
print('Is number == 1.0+2.0? I prdict True')
print(number == 1.0+2.0)
number = 0.3
print('Is number == 0.3? I predict True')
print(number == 0.3)
print('Is number == 0.1+0.2? I predict False')
print(number == 0.1+0.2)
car = 'Audi'
print('Is car != "Audi"? I predict False')
print(car != 'Audi')
print('Is car.lower() != "Audi"? I predict True')
print(car.lower() != 'Audi')
print('Is car > "audi"? I predict False')
print(car > 'audi')
print('Is car < "audi"? I predict True')
print(car < 'audi')
lists = list(range(1, 10))
print('Is 3 in lists? I predict True')
print(3 in lists)
print('Is 10 in lists? I predict False')
print(10 in lists)
5-2 更多的条件测试
# 检查两个字符串相等或不相等
print('A' == 'A')
print('a' != 'a')
# 使用函数lower()的测试
print('Alice'.lower() == 'ALicE'.lower())
print('mlke'.lower() == 'M1ke'.lower())
# 检查两个数字相等、不等、大于、小于、大于等于和小于等于
print(0.3 == 0.3)
print(0.3 != 0.6/2)
print(0.2+0.1 > 0.3)
print(0.6+0.1 < 0.7)
print(1+3 >= 4)
print(0.3-0.2 <= 0.099999999999)
# 使用关键字and和or的测试
print(1 and 0 == 0)
print(False or 1 == False)
# 测试特定的值是否包含在列表中
print(1 in [i for i in range(10, 1, -1)])
print(5050 in [sum(list(range(1, i+1))) for i in range(1, 101)])
# 测试特定的值是否不包含在列表中
print(1 not in [i for i in range(10, 1, -1)])
print(5050 not in [sum(list(range(1, i+1))) for i in range(1, 101)])
5-3 外星人颜色#1
# 第一个版本
alien_color = 'green'
if alien_color == 'green':
print('You get 5 points')
# 第二个版本
alien_color = 'red'
if alien_color == 'green':
print('You get five points')
5-4 外星人颜色#2
# 第一个版本
alien_color = 'green'
if alien_color == 'green':
print('You get 5 points')
else:
print('You get 10 points')
# 第二个版本
alien_color = 'red'
if alien_color == 'green':
print('You get 5 points')
else:
print('You get 10 points')
5-5 外星人颜色#3
# 第一个版本
alien_color = 'green'
if alien_color == 'green':
print('You get 5 points')
elif alien_color == 'yellow':
print('You get 10 points')
else:
print('You get 15 points')
# 第二个版本
alien_color = 'yellow'
if alien_color == 'green':
print('You get 5 points')
elif alien_color == 'yellow':
print('You get 10 points')
else:
print('You get 15 points')
# 第三个版本
alien_color = 'red'
if alien_color == 'green':
print('You get 5 points')
elif alien_color == 'yellow':
print('You get 10 points')
else:
print('You get 15 points')
5-6 人生的不同阶段
age = int(input('他的年龄是:'))
if age < 2:
print('他是婴儿')
elif age < 4:
print('他正蹒跚学步')
elif age < 13:
print('他是儿童')
elif age < 20:
print('他是青少年')
elif age < 65:
print('他是成年人')
else:
print('他是老年人')
5-7 喜欢的水果
favorite_fruits = ['watermelon', 'durian', 'pineapple', 'strawberry', 'mango', 'banana']
if 'apple' in favorite_fruits:
print('You really like apples!')
if 'durian' in favorite_fruits:
print('You really like durians!')
if 'pear' in favorite_fruits:
print('You really like pears!')
if 'grape' in favorite_fruits:
print('You really like grapes!')
if 'mango' in favorite_fruits:
print('You really like mangoes!')
5-8 以特殊方式跟管理员打招呼
usernames = ['admin', 'charlie', 'tom', 'alice', 'bob']
for username in usernames:
if username == 'admin':
print('Hello admin, would you like to see a status report?')
else:
print('Hello '+username.title()+', thank you for logging in again')
5-9 处理没有用户的情形
usernames = ['admin', 'charlie', 'tom', 'alice', 'bob']
for username in usernames:
if username == 'admin':
print('Hello admin, would you like to see a status report?')
else:
print('Hello '+username.title()+', thank you for logging in again')
usernames = []
if not usernames:
print('We need to find some users!')
5-10 检查用户名
current_users = ['mary', 'charlie', 'Tom', 'alice', 'bob']
new_users = ['david', 'mary', 'sherry', 'tom', 'eric']
for user in new_users:
if user.lower() in [current_user.lower() for current_user in current_users]:
print(user+'已被使用,需要输入别的用户名')
else:
print(user+'未被使用')
5-11 序数
nums = list(range(1, 10))
for num in nums:
if num == 1:
print(str(num)+'st')
elif num == 2:
print(str(num)+'nd')
elif num == 3:
print(str(num)+'rd')
else:
print(str(num)+'th')
5-13 自己的想法
现在想利用套接字编程设计一个能够跨局域网的即时聊天工具。
或者看看Python能否和汇编交叉编译生成操作系统。