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

yipeiwu_com7年前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 限制线程的最大数量的方法(Semaphore)

如下所示: import threading import time sem=threading.Semaphore(4) #限制线程的最大数量为4个 def gothrea...

python multiprocessing多进程变量共享与加锁的实现

python多进程和多线程是大家会重点了解的部分,因为很多工作如果并没有前后相互依赖关系的话其实顺序并不是非常的重要,采用顺序执行的话就必定会造成无谓的等待,任凭cpu和内存白白浪费,这...

python基础教程之简单入门说明(变量和控制语言使用方法)

简介有兴趣可以看看: 解释性语言+动态类型语言+强类型语言交互模式:(主要拿来试验,可以试试 ipython)复制代码 代码如下:$python>>> print 'h...

Python基于identicon库创建类似Github上用的头像功能

本文实例讲述了Python基于identicon库创建类似Github上用的头像功能。分享给大家供大家参考,具体如下: Identicon在很多大型IT网站上可以见到,比如Github,...

python实现点对点聊天程序

用Python实现点对点的聊天,2个程序,一个是client.py,一个是server.py,通过本机地址127.0.0.1连接进行通信,利用多线程把发送消息和接收消息分开独立进行。 c...