python实现获取序列中最小的几个元素


Posted in Python onSeptember 25, 2014

本文实例讲述了python实现获取序列中最小的几个元素。分享给大家供大家参考。

具体方法如下:

import heapq 
import random 
def issorted(data): 
 data = list(data) 
 heapq.heapify(data) 
 while data: 
  yield heapq.heappop(data) 
   
alist = [x for x in range(10)] 
random.shuffle(alist) 
print 'the origin list is',alist 
print 'the min in the list is' 
for x in issorted(alist): 
 print x,

程序运行结果如下:

the origin list is [2, 3, 4, 9, 8, 5, 1, 6, 0, 7]
the min in the list is
0 1 2 3 4 5 6 7 8 9

使用了heapq模块和random模块.heapq二叉树,常用来处理优先级序列问题。

此外还有一个更为简单的方法:

print heapq.nsmallest(3,alist) #打印出alist列表中最小的三个元素最小,如果是字母就是按字母序比较

感兴趣的朋友可以测试运行本文实例,相信本文所述对大家Python程序设计的学习有一定的借鉴价值。

Python 相关文章推荐
详解在Python程序中自定义异常的方法
Oct 16 Python
利用Python开发微信支付的注意事项
Aug 19 Python
基于python log取对数详解
Jun 08 Python
python二进制读写及特殊码同步实现详解
Oct 11 Python
Python MySQLdb 执行sql语句时的参数传递方式
Mar 04 Python
使用Django xadmin 实现修改时间选择器为不可输入状态
Mar 30 Python
Python PyQt5整理介绍
Apr 01 Python
python库skimage给灰度图像染色的方法示例
Apr 27 Python
如何用Anaconda搭建虚拟环境并创建Django项目
Aug 02 Python
Pandas数据分析的一些常用小技巧
Feb 07 Python
Python中异常处理用法
Nov 27 Python
Python Matplotlib绘制等高线图与渐变色扇形图
Apr 14 Python
python中bisect模块用法实例
Sep 25 #Python
python实现给字典添加条目的方法
Sep 25 #Python
python实现忽略大小写对字符串列表排序的方法
Sep 25 #Python
python对字典进行排序实例
Sep 25 #Python
python实现在无须过多援引的情况下创建字典的方法
Sep 25 #Python
python迭代器实例简析
Sep 25 #Python
Python中itertools模块用法详解
Sep 25 #Python
You might like
php zip文件解压类代码
2009/12/02 PHP
php 数组的一个悲剧?
2011/05/11 PHP
PHP取得一个类的属性和方法的实现代码
2011/05/22 PHP
php的ddos攻击解决方法
2015/01/08 PHP
PHP中字符安全过滤函数使用小结
2015/02/25 PHP
ThinkPHP框架实现数据增删改
2017/05/07 PHP
Laravel框架源码解析之反射的使用详解
2020/05/14 PHP
使javascript也能包含文件
2006/10/26 Javascript
从javascript语言本身谈项目实战
2006/12/27 Javascript
JS获取scrollHeight问题想到的标准问题
2007/05/27 Javascript
JavaScript 撑出页面文字换行
2009/06/15 Javascript
JavaScript 异步调用框架 (Part 6 - 实例 & 模式)
2009/08/04 Javascript
JS命名空间的另一种实现
2013/08/09 Javascript
纯JS实现旋转图片3D展示效果
2015/04/12 Javascript
jQuery实现鼠标悬停背景翻转的黑色导航菜单代码
2015/09/14 Javascript
多种js图片预加载实现方式分享
2016/02/19 Javascript
如何解决hover在ie6中的兼容性问题
2016/12/15 Javascript
基于Vue实现图片在指定区域内移动的思路详解
2018/11/11 Javascript
JS选取DOM元素常见操作方法实例分析
2018/12/10 Javascript
vue实现动态显示与隐藏底部导航的方法分析
2019/02/11 Javascript
[04:50]DOTA2亚洲邀请赛小组赛第四日 TOP10精彩集锦
2015/02/02 DOTA
python实现多线程采集的2个代码例子
2014/07/07 Python
讲解Python中for循环下的索引变量的作用域
2015/04/15 Python
Python新手入门最容易犯的错误总结
2017/04/24 Python
Python模块结构与布局操作方法实例分析
2017/07/24 Python
python+django+sql学生信息管理后台开发
2018/01/11 Python
tensorflow 打印内存中的变量方法
2018/07/30 Python
用pyqt5 给按钮设置图标和css样式的方法
2019/06/24 Python
Python requests获取网页常用方法解析
2020/02/20 Python
Python生成器实现简单"生产者消费者"模型代码实例
2020/03/27 Python
python 给图像添加透明度(alpha通道)
2020/04/09 Python
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
2016/03/12 面试题
见习报告的格式
2014/11/04 职场文书
少年雷锋观后感
2015/06/10 职场文书
事业单位工作人员岗前培训心得体会
2016/01/08 职场文书
Win11局域网共享权限在哪里设置? Win11高级共享的设置技巧
2022/04/05 数码科技