-
用三个集合表示三门学科的选课学生姓名(一个学生可以同时选多门课)
a. 求选课学生总共有多少人
s1={'张三','李四','王五','老六'} s2={'王五','小明','小华'} s3={'张三','李四','老六','王五'} result=s1|s2 print(result) count=0 for x in result: count+=1 print(count) #6
b. 求只选了第一个学科的人的数量和对应的名字
count=0 for x in s1: print(x) count+=1 print(count)
c. 求只选了一门学科的学生的数量和对应的名字
result1=s2^s1 print(result1) result2=result1-s3 print(result2) count=0 for x in result2: count+=1 print(count) #{'小华', '小明'} 2
d. 求只选了两门学科的学生的数量和对应的名字
result1=s1|s3 result2=s1&s2&s3 result3=result1^result2 print(result3) count=0 for x in result3: count+=1 print(count) #{'张三', '李四'} 2
e. 求选了三门学生的学生的数量和对应的名字
result1=s1&s2&s3 print(result1) count=0 for x in result1: count+=1 print(count) #{'老六'} #1
-
获取列表中出现次数最多的元素
例如:nums = [1, 2, 3,1,4,2,1,3,7,3,3] —> 打印:3
nums = [1,2,2,1,3] --> 打印1、2
nums = [5,1, 2, 1,4,2,1,3,7,3,3] numcount=0 list1=[] for i in nums: if nums.count(i)>numcount: numcount=nums.count(i) list1.clear() if i not in list1: list1.append(i) elif nums.count(i)==numcount: if i not in list1: list1.append(i) print(list1) #[1, 3]
-
实现给定一个日期,判断这个日期是今年第几天的程序(尝试)
例如:2022/12/31 --> 今年第365天;2022/1/1 --> 今年第1天
data=input('输入年月日如( 2022/12/31):') data1=data.split('/') # print(data1) ['2022','12','31'] year1=int(data1[0]) # 1.先判断闰年或平年 sum1=0 if( year1 %4==0 and year1%100!=0 )or year1%400==0: sum1=1 else: sum1=0 # 2.创建一个列表,存储每个月的天数 monthlist=[31,28,31,30,31,30,31,31,30,31,30,31] # 3.先计算前N-1个月的总天数 month1=int(data1[1]) if month1>2 and sum1==1: days=sum(monthlist[:month1-1])+1 else: days=sum(monthlist[:month1-1]) # 4.添加最后的天数 day1=int(data1[2]) days+=day1 print(f'{data}是今年的第{days}天')