-
用三个集合表示三门学科的选课学生姓名(一个学生可以同时选多门课)
course1 = {'李明','张三','李四','王五','赵四','小花','小明','李华'} course2 = {'小雪','王二','玲玲','涛涛','张三','李华','笑笑'} course3 = {'小李','李明','李华','王五','赵四','小赵','小雪','李华','张三'}
a. 求选课学生总共有多少人
all_name = course1 | course2 | course3 # print(all_name) count = 0 for x in all_name: count += 1 print('选课学生',all_name,'数量为:',count) #选课学生 {'小赵', '笑笑', '赵四', '小花', '涛涛', '小明', '张三', '玲玲', '王二', '小李', '李华', '李明', '李四', '小雪', '王五'} 数量为: 15
b. 求只选了第一个学科的人的数量和对应的名字
#方1 name =[] count =0 for x in course1: if x not in course2 and x not in course3: name.append(x) count += 1 print('只选了一门学科的学生',name,'数量为:',count) #只选了一门学科的学生 ['李四', '小花', '小明'] 数量为: 3 #方2 count =0 all_name = course1 - course2 - course3 for x in all_name: count +=1 print(all_name,count)
c. 求只选了一门学科的学生的数量和对应的名字
count = 0 all_coursel = course1 ^ course2 ^ course3 for x in all_coursel: count +=1 print(all_coursel,count) #只选了一门学科的学生 {'小花', '王二', '笑笑', '小李', '小赵', '张三', '李华', '李四', '小明', '玲玲', '涛涛'} 数量为 11
d. 求只选了两门学科的学生的数量和对应的名字
print('course1,2:',course1 & course2) print('course2,3:',course2 & course3) print('course1,3:',course1 & course3) #course1,2: {'李华', '张三'} #course2,3: {'李华', '小雪', '张三'} #course1,3: {'李华', '张三', '李明', '赵四', '王五'}
e. 求选了三门学生的学生的数量和对应的名字
count =0 all_name =course1 & course2 & course3 for x in all_name: count +=1 print('选了三门学生的学生的数量:',count,'名字为:',all_name) #选了三门学生的学生的数量: 2 名字为: {'李华', '张三'}
-
获取列表中出现次数最多的元素
例如:nums = [1, 2, 3,1,4,2,1,3,7,3,3] —> 打印:3
nums = [1,2,2,1,3] --> 打印1、2
nums = [1, 2, 3, 1, 4, 2, 1, 3, 7, 3, 3] nums_count = nums[0] new_nums=[] for x in nums: if nums.count(x) > nums_count: nums_count = nums.count(x) new_nums.clear() new_nums.append(x) elif nums.count(x) == nums_count: for i in new_nums: if x== i: break else: new_nums.append(i) print(new_nums)
-
实现给定一个日期,判断这个日期是今年第几天的程序(尝试)
例如:2022/12/31 --> 今年第365天;2022/1/1 --> 今年第1天
year = int(input('请输入年:')) month = int(input('请输入月·:')) day = int(input('请输入日:')) day =0 sum =i=0 all_month1 =[0,31,29,31,30,31,30,31,31,30,31,30,31] all_month2 =[0,31,28,31,30,31,30,31,31,30,31,30,31] if year % 400==0 or (year % 100 != 0 and year % 4==0): while i < month: sum +=all_month1[i] i += 1 continue day += month print(year,'是',year,'的','第',day,'天') else: while i < month: sum += all_month2[i] i += 1 continue day += month print(year,month,day,'是',year,'的','第',day,'天')
day8集合作业
最新推荐文章于 2024-04-22 19:55:02 发布