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通过TensorFlow卷积神经网络实现猫狗识别
这份数据集来源于Kaggle,数据集有12500只猫和12500只狗.在这里简单介绍下整体思路 处理数据 设计神经网络 进行训练测试 1. 数据处理 将图片数据处理为 tf 能够识别的数据格式,并将数据设计批次. 第一步get_files() 方法读取图片,然后根据图片名,添加猫狗 label,然后再将 image和label 放到 数组中,打乱顺序返回 将第一步处理好的图片 和label 数组 转化为 tensorflow 能够识别的格式,然后将图片裁剪和补充进行标准化处理,分批次返回. 新建
-
浅谈Python中eval的强大与危害
eval是Python的一个内置函数,这个函数的作用是,返回传入字符串的表达式的结果.想象一下变量赋值时,将等号右边的表达式写成字符串的格式,将这个字符串作为eval的参数,eval的返回值就是这个表达式的结果. python中eval函数的用法十分的灵活,但也十分危险,安全性是其最大的缺点.本文从灵活性和危险性两方面介绍eval. 1.强大之处 举几个例子感受一下,字符串与list.tuple.dict的转化. a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]&
-
在Python中使用Neo4j的方法
Neo4j是面向对象基于Java的 ,被设计为一个建立在Java之上.可以直接嵌入应用的数据存储.此后,其他语言和平台的支持被引入,Neo4j社区获得持续增长,获得了越来越多的技术支持者.目前已支持.NET.Ruby.Python.Node.js及PHP等.因此,不管是什么项目,没有理由不引入Neo4j. 本文重点介绍Python,这门语言的哲学与Java大大不同,同时展示py2neo库如何被用来建立一个简单的应用程序. 一个快速的REST例子 首先来看些基本知识.如果没有服务API,Neo4j
-
python ---lambda匿名函数介绍
lambda特性:"一个语法,三个特性,四个用法" 一个语法 在Python中,lambda的语法是唯一的.其形式如下: lambda argument_list: expression 其中,lambda是Python预留的关键字,argument_list和expression由用户自定义.具体介绍如下. 1.这里的argument_list是参数列表.它的结构与Python中函数(function)的参数列表是一样的.具体来说,argument_list可以有非常多的形式.例如:
-
详解Python做一个名片管理系统
名片管理系统有两个模块组成:cards_main.py 和 cards_tools.py一个是主程序,另一个是封装增删改查函数的被调用程序 代码如下 cards_main.py #! /usr/bin/python # -*- coding:utf-8 -*- import cards_tools # 无限循环,用户决定什么时候退出循环! while True: # TODO(作者) 显示功能菜单 # TODO 提醒要做的事情 cards_tools.show_menu() action_str
-
详解python中init方法和随机数方法
1.__init__方法的使用 2.random方法的使用 在python中,有一些方法是特殊的,是以两个下划线开始,两个下划线结束,定义类,最常用的方法就是__init__()方法,这是类的初始化方法,类似于C#或Java的构造函数.在创建对象的时候自动执行. class Person(object): ''' 这里定义的属性 为 静态的 ''' empCount = 0 # 创建对象的时候自动执行 def __init__(self, name): print('初始化方法.....') s
-
python3实现钉钉消息推送的方法示例
背景 偶然发现一个python实现的按照农历/阴历推送消息提醒的程序,钉钉群消息推送.此处总结并对其可推送的消息做. DingtalkNotice 环境:python3.7 安装: pip install schedule #实现定时任务的模块 pip install DingtalkChatbot #python封装的各种消息的调用 pip install sxtwl #日历库 钉钉自定义机器人: 钉钉群机器人是一个高级扩展的功能,可以将第三方服务的信息聚合到钉钉群众,实现信息的自动化同步.1
-
Python3调用百度AI识别图片中的文字功能示例【测试可用】
本文实例讲述了Python3调用百度AI识别图片中的文字功能.分享给大家供大家参考,具体如下: 首先pip install命令安装baidu-aip模块,如下图所示(这里使用pip3 install baidu-aip命令): 编辑Python代码时注意,需要首先引入AipOcr和re两个模块,即: from aip import AipOcr import re 示例代码如下: from aip import AipOcr import re APP_ID='***' API_KEY='***
-
Python使用sqlalchemy模块连接数据库操作示例
本文实例讲述了Python使用sqlalchemy模块连接数据库操作.分享给大家供大家参考,具体如下: 安装: pip install sqlalchemy # 安装数据库驱动: pip install pymysql pip install cx_oracle 举例:(在url后面加入?charset=utf8可以防止乱码) from sqlalchemy import create_engine engine=create_engine('mysql+pymysql://username:p
-
Python实现的调用C语言函数功能简单实例
本文实例讲述了Python实现的调用C语言函数功能.分享给大家供大家参考,具体如下: 实例参考python cookbook 中的15.1节中的例子P612页 先把 c文件编译成 so文件 gcc a.c -fpic -shared -o lib.so 通过上面编译成so文件 利用ctypes模块. from ctypes import cdll a=cdll.LoadLibrary("./lib.so") a.say() 能过上面代码测试通过. 更多关于Python相关内容感兴趣的读
随机推荐
- 用命令创建MySQL数据库(de1)的方法
- Macromedia Flex 标记语言简介
- asp.net 图片超过指定大小后等比例压缩图片的方法
- JavaScript中__proto__与prototype的关系深入理解
- python 查找字符串是否存在实例详解
- Android实现自定义轮播图片控件详解
- 10分钟学会docker
- js实现楼层效果的简单实例
- js实现Select下拉框具有输入功能的方法
- CSS网页布局入门教程4:二列固定宽度
- php集成安装包wampserver修改密码后phpmyadmin无法登陆的解决方法 原创
- 基于jquery插件实现拖拽删除图片功能
- jQuery快速高效制作网页交互特效
- PHP JSON格式的中文显示问题解决方法
- 谈谈JavaScript自定义回调函数
- 深入理解JavaScript系列(9) 根本没有“JSON对象”这回事!
- 关于代理上传图片到主控网站的说明
- apache中使用mod_log_slow分析响应慢的请求
- C++中typedef 及其与struct的结合使用
- 理解javascript模块化