用三个集合表示三门学科的选课学生姓名(一个学生可以同时选多门课)
course1 = {'s1', 's3', 's4', 's7', 's8', 's13', 's14'}
course2 = {'s3', 's6', 's7', 's11', 's14', 's15'}
course3 = {'s2', 's5', 's9', 's12', 's3', 's8', 's6'}
a. 求选课学生总共有多少人
course = course1 | course3 | course2
print(len(course))
b. 求只选了第一个学科的人的数量和对应的名字
print(len(course1-course3-course2), course1-course3-course2)
c. 求只选了一门学科的学生的数量和对应的名字
course_1 = (course1 ^ course3 ^ course2) - (course3 & course2 & course1)
print(len(course_1), course_1)
d. 求只选了两门学科的学生的数量和对应的名字
course_2 = course - course_1 - (course3 & course2 & course1)
print(course_2)
e. 求选了三门学生的学生的数量和对应的名字
course_3 = (course3 & course2 & course1)
print(course_3)
获取列表中出现次数最多的元素
例如: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]
num = []
count = 0
for index in set(nums):
if nums.count(index) > count:
num.clear()
num.append(index)
count = nums.count(index)
elif nums.count(index) == count:
num.append(index)
count = nums.count(index)
print(num, count)
实现给定一个日期,判断这个日期是今年第几天的程序(尝试)
例如:2022/12/31 --> 今年第365天;2022/1/1 --> 今年第1天
date = input('请输入日期(例如2022/2/28):')
days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
date_list = date.split('/')
year = int(date_list[0])
month = int(date_list[1])
day = int(date_list[2])
if (year % 400 == 0) or (year % 4 == 0 and year % 100):
days[1] += 1
day_seq = sum(days[:month-1]) + day
print(day_seq)