Python实现的列表排序、反转操作示例

yipeiwu_com6年前Python基础

本文实例讲述了Python实现的列表排序、反转操作。分享给大家供大家参考,具体如下:

排序:

使用sorted方法和列表的sort方法:

sorted方法适用范围更广,sort方法只有列表有。

li = [{'a':'23'}, {'a':'12'}]
def sort_fun(mp):
  s = mp['a']
  return int(s)
print(sorted(li, key = sort_fun, reverse = True)) #这会返回一个排好序的列表,原列表不变。
print(li.sort(key = sort_fun, reverse = True)) # 返回None,原列表变为排好序的。

运行结果:

[{'a': '23'}, {'a': '12'}]
None

  • key参数指示按照什么排序,是一个函数,函数的输入为要排序列表的项,输出为可排序的数据类型。
  • reverse参数指示排序方式,默认是False,也就是从小到大排序。

反转:

将原列表反转,返回None:

li = [1, 2, 3]
li.reverse()
print(li)
# [3, 2, 1]

不改变原列表,返回反转后的新列表:

li = [1, 2, 3]
li2 = li[::-1]
print(li)
print(li2)
# [1, 2, 3]
# [3, 2, 1]

PS:这里再为大家推荐一款关于排序的演示工具供大家参考:

在线动画演示插入/选择/冒泡/归并/希尔/快速排序算法过程工具:
http://tools.jb51.net/aideddesign/paixu_ys

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python列表(list)操作技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

解决python Markdown模块乱码的问题

解决python Markdown模块乱码的问题

有个需求需要把markdown转成html模块,查询了一下刚好有这个模块 安装 pip install amrkdown 安装完成直接转换并保存为html时,发现出现中文乱码的情况 用...

在Django中同时使用多个配置文件的方法

我们仅仅处理一个单一的设置文件 settings.py文件由django-admin.py startproject命令生成。但是当你准备要进行配置的时候,你将发现你需要多个配置文件以使...

Python数据结构与算法之链表定义与用法实例详解【单链表、循环链表】

本文实例讲述了Python数据结构与算法之链表定义与用法。分享给大家供大家参考,具体如下: 本文将为大家讲解: (1)从链表节点的定义开始,以类的方式,面向对象的思想进行链表的设计 (2...

Python文件路径名的操作方法

1 文件路径名操作   对于文件路径名的操作在编程中是必不可少的,比如说,有时候要列举一个路径下的文件,那么首先就要获取一个路径,再就是路径名的一个拼接问题,通过字符串的拼接就可以得到一...

浅谈pycharm的xmx和xms设置方法

PyCharm使用jre,所以设置内存使用的情况和eclipse类似。 编辑PyCharm安装目录下PyCharm 4.5.3\bin下的pycharm.exe.vmoptions文件,...