# -*- coding: utf-8 -*-# @Time : 2023-9-5 09:19# @Author : xiaomu# @Site : 键盘敲烂 月薪过万!!!!# @File : 02_作业.py"""
1. `values = ['Nice', 'Good', 'look', 'bye', 'Rose', 'after', 'maintain']`
- 获取列表中包含`e`的元素
- 获取长度在5及其以上的元素
- 获取以小写字母开头的元素
- 将列表中的元素转换成大写
- 将列表中的元素转换成首字母大写 其他小写
- 将列表中的数据使用`_`拼接在一起
2. `scores = {'张晓慧': 78, '王乐乐': 79, '赵丽': 67, '王冕': 59, '刘磊': 57}`
- 获取成绩在60及其以上的信息 以键值对展示
- 获取名字长度为3个字的学生成绩信息 以键值对展示
- 获取姓王的同学的成绩信息 以键值对展示
- 获取成绩最高的学生姓名
3. `s = 'Hello Good Good Study. Python2304 fighting'`
- 获取所有的小写字母
- 统计大写字母出现的次数、小写字母出现的次数、数字出现的次数、其他符号出现的次数
"""
values =['Nice','Good','look','bye','Rose','after','maintain']# 获取列表中包含`e`的元素print([ele for ele in values if'e'in ele])# 获取长度在5及其以上的元素print([ele for ele in values iflen(ele)>=5])# 获取以小写字母开头的元素# 字符串[0].islower()print([ele for ele in values if ele[0].islower()])# [ele for ele in values if ele.startswith(('a', 'b', 'c', 'd', 'e'))]# 将列表中的元素转换成大写print([ele.upper()for ele in values])# 将列表中的元素转换成首字母大写 其他小写print([ele.capitalize()for ele in values])# 将列表中的数据使用`_`拼接在一起print('_'.join(values))# `scores = {'张晓慧': 78, '王乐乐': 79, '赵丽': 67, '王冕': 59, '刘磊': 57}`# - 获取成绩在60及其以上的信息 以键值对展示## - 获取名字长度为3个字的学生成绩信息 以键值对展示# - 获取姓王的同学的成绩信息 以键值对展示# - 获取成绩最高的学生姓名
scores ={'张晓慧':78,'王乐乐':79,'赵丽':67,'王冕':59,'刘磊':57}
new_dict ={}for k, v in scores.items():if v >=60:# new_dict[k] = v
new_dict.setdefault(k, v)print(new_dict)# 字典推导式print({k: v for k, v in scores.items()if v >=60})# 获取名字长度为3个字的学生成绩信息 以键值对展示print({k: v for k, v in scores.items()iflen(k)==3})# 获取姓王的同学的成绩信息 以键值对展示print({k: v for k, v in scores.items()if k[0]=='王'})print({k: v for k, v in scores.items()if k.startswith('王')})# 获取成绩最高的学生姓名print(max(scores.values()))# 获取成绩最高的学生姓名print([k for k, v in scores.items()if v ==max(scores.values())])# 3. `s = 'Hello Good Good Study. Python2304 fighting'`# - 获取所有的小写字母# - 统计大写字母出现的次数、小写字母出现的次数、数字出现的次数、其他符号出现的次数
s ='Hello Good Good Study. Python2304 fighting'# 获取所有的小写字母print(''.join([ch for ch in s if ch.islower()]))# 统计大写字母出现的次数、小写字母出现的次数、数字出现的次数、其他符号出现的次数
upper_count =0
lower_count =0
digit_count =0
other_count =0# 遍历for ch in s:if ch.isupper():
upper_count +=1elif ch.islower():
lower_count +=1elif ch.isdigit():
digit_count +=1else:
other_count +=1
info ='大写字母的个数%s, 小写字母的个数%s, 数字的个数%s, 其他个数%s'%(upper_count, lower_count, digit_count, other_count)print(info)
info1 =f'大写字母个数{upper_count}, 小写字母个数{lower_count}, 数字个数{digit_count}, 其他个数{other_count}'print(info1)
count_dict ={'upper_count':0,'lower_count':0,'digit_count':0,'other_count':0}# 遍历for ch in s:if ch.isupper():
count_dict['upper_count']+=1elif ch.islower():
count_dict['lower_count']+=1elif ch.isdigit():
count_dict['digit_count']+=1else:
count_dict['other_count']+=1print(count_dict)