0 引言
在python学习中,我们学习了如何同行多次输入split语句,以及如何构建列表和以及for循环语句,利用这些所学,我们就能解决一些生活中常见问题
1 问题
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数 (N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。
示例1
输入:10
20 40 32 67 40 20 89 300 400 15
输出:8
15 20 32 40 67 89 300 400
示例2
输入:10
12 20 30 15 16 14 89 78 56 35
输出:10
12 14 15 16 20 30 35 56 78 89
2 方法
输入有两行,第1行为1个正整数,表示所生成的随机数的个数N
第2行有N个用空格隔开的正整数,为所产生的随机数。第二行用split进行一行多次输入,在将其转为列表,然后运用set函数排除重复值,在将列表进行sorted进行排序,最后用len统计个数,输出是运用for..i..in遍历列表一个一个抽出输出。
3 实验结果与讨论
通过实验、实践等证明提出的方法是有效的,是能够解决开头提出的问题。
代码清单 1
n = int(input())
c=list(map(int,input().split()))
c2=set(c)
c3=sorted(c2)
print(len(c3))
for j in c3:
print(j,end=' ')
4 结语
针对随机数的问题,提出运用列表加循环的方法,通过本实验,证明该方法是有效的,本文只考虑了运用列表加循环的方法,当然对此问题还可以直接引用函数等方法进行解决。