输入a,b班的名单,并进行如下统计。
输入格式:
第1行::a班名单,一串字符串,每个字符代表一个学生,1个或多个空格分隔,可能有重复字符。数字代表男生,字母代表女生。
第2行::b班名单,一串字符串,每个字符代表一个学生,1个或多个空格分隔,可能有重复学生。数字代表男生,字母代表女生。
第3行::参加数学竞赛的学生,一串字符串,每个学生名称以1个或多个空格分隔。
第4行:参加计算机竞赛的学生,一串字符串,每个学生名称以1个或多个空格分隔。
输出格式:
注意:输出人员名单的时候需调用sorted函数,如集合为x,则print(sorted(x)) 。
输出两个班级的所有人员名单和数量。
输出两个班级中既参加数学,也参加计算机竞赛的名单和数量。
输出两个班级中参加比赛的女名单和数量。
输出两个班级中只参加数学竞赛的名单。
输入样例:
在这里给出一组输入。例如:
1 2 3 4 a s d f
6 7 8 9 6 5 z x c
2 3 a s 8 9 z
1 3 4 s d 5 9 x z
输出样例:
在这里给出相应的输出。例如:
Total: ['1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'c', 'd', 'f', 's', 'x', 'z'], num: 16
Math and jsj: ['3', '9', 's', 'z'], num: 4
FeMale in race: ['a', 'd', 's', 'x', 'z'], num: 5
Only Math: ['2', '8', 'a']
代码展示:
Class_A = input().split()
Class_B = input().split()
Math_Contest = input().split()
Computer_Contest = input().split()
Contest_Sheet = list(set(Math_Contest) | set(Computer_Contest))
Boy_Sheet = []
for i in range(0, 10):
Boy_Sheet.append(chr(ord('1') + i))
##获取字符'1'的ASCII码值,结果为49,加上i,返回对应字符。
Class_A = list(set(Class_A))
Class_B = list(set(Class_B))
Stu_Sheet = []
Stu_Sheet = list(set(Class_A) | set(Class_B))
math_and_computer = list(set(Math_Contest) & set(Computer_Contest))
Girl_Contest = list(set(Contest_Sheet) - set(Boy_Sheet))
Only_Math = list(set(Math_Contest) - set(Computer_Contest))
print(f"Total: {sorted(Stu_Sheet)}, num: {len(Stu_Sheet)}")
print(f"Math and jsj: {sorted(math_and_computer)}, num: {len(math_and_computer)}")
print(f"FeMale in race: {sorted(Girl_Contest)}, num: {len(Girl_Contest)}")
print(f"Only Math: {sorted(Only_Math)}")