刷题
第4天的作业打卡
给定一个正整数,统计该正整数中,出现次数最多的数字,如果有多个,按照数字排序后输出。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| import sys from collections import defaultdict
try: numbers_int = int(input("A positive integer please: ")) numbers = str(numbers_int) if numbers_int <= 0: raise Exception except Exception: print("Input is not an positive integer, giving up.") sys.exit()
cnt_dict=defaultdict(int)
for item in numbers: cnt_dict[item] += 1
res = []
max_cnt = max(cnt_dict.values())
for cnt_key, cnt_value in cnt_dict.items(): if cnt_value == max_cnt: res.append(int(cnt_key)) res = ', '.join(str(k) for k in res)
print(f'出现次数最多的是{res}, 次数是{max_cnt}')
|
元组和列表的区别
-
列表是可变的,可以通过索引和切片进行修改、添加和删除元素。而元组是不可变的,一旦创建就不能对其进行修改。
-
列表使用方括号 [ ]
来表示,元素之间用逗号 ,
分隔。元组使用圆括号 ( )
来表示,元素之间也用逗号 ,
分隔。但是,当元组只包含一个元素时,需要在元素后添加一个逗号,以区分它是一个元组而不是一个普通的值。
-
使用场景:列表通常用于存储多个相关的值,并且需要进行增删改查操作。元组通常用于保护数据的完整性,也可用于存储不可变的、有序的数据。
如何修改元组?
1 2 3 4 5
| tup=(1,2,3) lst=list(tup) lst.append(4) tup=tuple(lst) print(tup)
|
或者
1 2 3
| tup=(1,2,3) tup=tup[:]+(4,) print(tup)
|