题解 | 明明的随机数
n = int(input().strip()) meg = {} i = 0 while i < n: try: temp = int(input().strip()) except ValueError: i += 1 continue if 1 <= temp <= 500: meg[temp] = 1 # 1表示已出现,不需要管之前是否出现过 i += 1 # meg是字典,按照meg.key(键值)进行默认排序——从小到大 for num in sorted(meg.keys()): print(num)
- 首先理解题干,本题要求将所有不重复的数字按从小到大进行排序,那么需要对输入的数字进行遍历并做判断,所以选择哈希表,python中最常用的哈希表就是字典
- python中输入的都是字符串,所以需要使用int(input().strip())将字符转换为数字并去掉前后空格
- sorted()函数的默认用法是从小到大排序,.keys()是提取字典的键集合
- 处理异常的代码:try:需要检测的代码 except ValueError:处理方案