第一阶段:Python开发基础 day07 变量的内置方法 课后作业
1.使用代码实现以下业务逻辑
写代码,有如下变量name = " aleX"
,请按照要求实现每个功能:
-
移除 name 变量对应的值两边的空格,并输出处理结果
-
判断 name 变量对应的值是否以 "al" 开头,并输出结果
-
判断 name 变量对应的值是否以 "X" 结尾,并输出结果
-
将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
-
将 name 变量对应的值根据 “l” 分割,并输出结果。
-
将 name 变量对应的值变大写,并输出结果
-
将 name 变量对应的值变小写,并输出结果
-
请输出 name 变量对应的值的第 2 个字符?
-
请输出 name 变量对应的值的前 3 个字符?
-
请输出 name 变量对应的值的后 2 个字符?
-
请输出 name 变量对应的值中 “e” 所在索引位置?
-
获取子序列,去掉最后一个字符。如: oldboy 则获取
o
l
d
b
o答:
# 给的示例
name = " aleX"
# 1.移除 name 变量对应的值两边的空格,并输出处理结果
name1 = name.strip()
print(name1)
# 2.判断 name 变量对应的值是否以 "al" 开头,并输出结果
bool_start = name.startswith('al')
print(bool_start)
# 3.判断 name 变量对应的值是否以 "X" 结尾,并输出结果
bool_end = name.endswith('X')
print(bool_end)
# 4.将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
name_replace = name.replace('l','p')
print(name_replace)
# 5.将 name 变量对应的值根据 “l” 分割,并输出结果。
name_split = name.split('l')
print(name_split)
# 6.将 name 变量对应的值变大写,并输出结果
name_upper = name.upper()
print(name_upper)
# 7.将 name 变量对应的值变小写,并输出结果
name_lower = name.lower()
print(name_lower)
# 8.请输出 name 变量对应的值的第 2 个字符?
print(name[2])
# 9.请输出 name 变量对应的值的前 3 个字符?
print(name[:3])
# 10.请输出 name 变量对应的值的后 2 个字符?
print(name[-2:])
# 11.请输出 name 变量对应的值中 “e” 所在索引位置
print(name.find('e'))
# 12.获取子序列,去掉最后一个字符。如: oldboy 则获取
for i in range(len(name)-1):
print(name[i])
2.编写猜年龄游戏,有以下要求
(参考:https://www.cnblogs.com/nickchen121/p/11069989.html)
- 可能会有用户会在输入年龄之后不小心输入空格,如18,请做处理
- 可能会有用户会恶意输入导致程序报错,如
逗你玩呀
,请做处理 - 如果用户3次没有猜对,可以选择继续玩或退出(自定义退出条件)
- 如果用户猜对了,可以在以下奖品中选择两件奖品(一次只能选择一件奖品):
{0:'buwawa',1:'bianxingjingang',2:'aoteman',3:'《python从入门到放弃》'}
- 用户选择奖品后退出程序,用户也可以不选择奖品直接退出程序。
- 没思路是正常的,那就对着我的先敲三遍。
答:
import random
# 随机一个年龄出来
age = random.randint(0,120)
# 奖品列表
price_dict = {0:'buwawa',1:'bianxingjingang',2:'aoteman',3:'《python从入门到放弃》'}
# 定义一个变量用来存放游戏次数
count = 0
while True :
guess_age = input('请输入你猜测的年龄(范围在0-120之间):')
# 先清除用户输入的时候可能存在的空格
guess_age = guess_age.strip()
# 判断用户输入的信息是不是都是数字
if guess_age.isdigit() != True:
print('你的输入有误,请重新输入')
continue
guess_age = int(guess_age)
if guess_age > age:
print('对不起,你猜大了,请重新猜一次哈')
elif guess_age < age:
print('对不起你猜小了请重新猜')
else:
choose = int(input('恭喜你猜对了,可以挑选奖品了,输入0-3进行选择:'))
print(f'你选择的奖品是:{price_dict[choose]}')
break
count += 1
if count == 3:
num = input('三次机会用完了,是否继续玩(继续请按y,退出请按q):')
if num == 'y':
count = 0
continue
elif num == 'q':
print('你选择了退出游戏')
break
else:
print('你的输入有误,已退出游戏')
break