python列表逆序输出_列表的排序和逆序

关于列表的排序和逆序问题,我们在遇到很多算法问题以及数据分析的时候,我们都会涉及到这两种问题,通常在求解问题的时候把数据放在列表中,然后使用列表方法进行排序逆序,都能迅速的帮助我们解决问题。

1. 列表排序

列表排序的时候我们可以采用两种方式,一种使用sorted(list)进行排序,一种是使用list.sort()进行排序,他们的使用结构分别为:

1) listname.sort(key=None,reverse=False)

listname为目标列表,key表示指定一个从每个列表元素中提取一个比较的键,reverse为可选参数,当指定为True时为降序,如果为Flase则为升序。默认为升序。

2) newlist = sorted(listname,key=None,reverse=False)

newlist为新的序列,listname为要排序的列表,key和reverse和1)中一致。

两种方式的区别在于前者等于在原序列上进行直接修改,而后者会生成一个新的序列。

先定义一个列表为my_list = [2,1,3,5,4,6,8,9,7,10],然后我们进行排序。

代码如下:my_list = [2,1,3,5,4,6,8,9,7,10]

my_list.sort()#这种格式是直接在列表后使用sort()函数

b = sorted(my_list)#这种方式是定义一个新列表来存放排序过的序列

print(b)

print(my_list)

输出结果为:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

这两种方式的使用可以自己选择,但一定要注意格式的正确性。

2. 列表逆序

我们在做算法题的时候,很多时候需要把我们存放的数据逆序,把一个容器中的数据逆序在Python中采用reverse()函数或者reversed()显得十分简单。

他们的结构和排序结构有所不同,reverse()和sort()类似,都是直接在列表后面使用方法就可以了,但reversed需要在前面加上一个存储类型(因为在reversed()作用后,返回一个迭代器,迭代器中的数据是逆序过的,我们使用一种已知的存储结构来存储迭代器中的元素更方便访问,通常会使用列表方法)。list.reverse()

newlist = list(reversed(list))

我们来看一下实例:my_list = [2,1,3,5,4,6,8,9,7,10]

c = list(reversed(my_list))#使用reversed逆序一定要加上一个存储类型

my_list.reverse()#使用reverse逆序

print(c)#输出

print(my_list)#输出

输出结果为:[10, 7, 9, 8, 6, 4, 5, 3, 1, 2]

[10, 7, 9, 8, 6, 4, 5, 3, 1, 2]

列表逆序的时候还可以使用前面学习过的切片操作,直接进行逆序:my_list = [2,1,3,5,4,6,8,9,7,10]

my_list = my_list[::-1]

print(my_list)

输出结果为:[10, 7, 9, 8, 6, 4, 5, 3, 1, 2]

3. 总结

经过前面的学习,加上本章的内容,大家应该可以试着去完成下面这个题目,这个题的解法比较适合本章节的学习。

题目链接为:1434

关于列表的推荐习题比较多,下面还为大家提供大量的习题去进行练习,大家可以选择性去作答。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值