【华为OJ_003】随机数

①题目要求

1)题目描述:

输入n个随机整数,对于重复的数字,只保留一个,把其余相同的数去掉,然后再把这些书从小到大排序。

2)输入描述:

输入多行,先输入随机数的个数(第一行输入),再输入相应个数的整数

3)输出描述:

返回多行处理后的结果

4)示例1:

输入:

3

2

2

1

输出:

1

2

5)示例2:

输入:

11

10

20

40

32

67

40

20

89

300

400

15

输出:

1

2

10

15

20

32

40

67

89

300

400

②参考答案:

def func():
    n = int(input())
    num_lst = []
    for i in range(n):
        num = int(input())
        num_lst.append(num)
        s = list(set(num_lst))
        s.sort()
    for x in s:
        print(x)
func()
#解释
#①list(set(num_lst))作用是去除重复
#②list_name.sort()作用是排序

③知识点:

1)set()

描述

set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。

语法

set([iterable])

参数说明:

  • iterable -- 可迭代对象对象;

2)sort()

描述

sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。

语法

sort()方法语法:

list.sort(cmp=None, key=None, reverse=False)

参数

  • cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序。
  • key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
  • reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值