Python读取实时数据流示例


Posted in Python onDecember 02, 2019

1、#coding:utf-8

chose = [
  ('foo',1,2),
  ('bar','hello'),
  ('foo',3,4)
]

def do_foo(x,y):
  print('foo',x,y)

def do_bar(s):
  print('bar',s)

for tag,*args in chose:
  if tag == 'foo':
    do_foo(*args)

  elif tag == 'bar':
    do_bar(*args)

line = 'nobody:*:-2:-2:Unprivileged User:/var/empty:/usr/bin/false'

uname,*fields,homedir,sh = line.split(':')
print(sh)
from collections import deque
def search(lines, pattern, history=5):
  previous_lines = deque(maxlen=history)
  for li in lines:
    if pattern in li:
      yield li, previous_lines
    previous_lines.append(li)


# Example use on a file
if __name__ == '__main__':
  with open(r'./somefiles.py') as f:
    for line, prevlines in search(f, 'python', 5):
      for pline in prevlines:
        print(pline, end='')
      print(line, end='')
      print('-' * 20)

2、import heapq

portfolio = [
{'name': 'IBM', 'shares': 100, 'price': 91.1},
{'name': 'AAPL', 'shares': 50, 'price': 543.22},
{'name': 'FB', 'shares': 200, 'price': 21.09},
{'name': 'HPQ', 'shares': 35, 'price': 31.75},
{'name': 'YHOO', 'shares': 45, 'price': 16.35},
{'name': 'ACME', 'shares': 75, 'price': 115.65}
]
cheap = heapq.nsmallest(3, portfolio, key=lambda s: s['price'])
expensive = heapq.nlargest(3, portfolio, key=lambda s: s['price'])
print(cheap)
print(expensive)

3、读取流数据源

如果数据是来自一个连续的数据源,我们需要读取连续数据,接下来

我们介绍一个适用于许多真是场景的简单解决方案,然而它并不是通用的。

操作步骤:

在本节中我们将想你演示如何读取一个实时变化的文件,并把输入打印出来。

import time
import os
import sys

if len(sys.argv) != 2:
  print('>>sys.stderr,"请输入需要读取的文件名!"')

filename = sys.argv[1]

if not os.path.isfile(filename):
  print('>>sys.stderr,"请给出需要的文件:\%s\: is not a file" % filename')

with open(filename,'r') as f:
  filesize = os.stat(filename)[6]
  f.seek(filesize)
  while True:
    where = f.tell()
    line = f.readline()
    if not line:
      time.sleep(1)
      f.seek(where)
    else:
      print(line)

以上这篇Python读取实时数据流示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
详细解析Python当中的数据类型和变量
Apr 25 Python
Python使用logging结合decorator模式实现优化日志输出的方法
Apr 16 Python
python密码错误三次锁定(实例讲解)
Nov 14 Python
Python代码实现KNN算法
Dec 20 Python
Python 机器学习库 NumPy入门教程
Apr 19 Python
python pycurl验证basic和digest认证的方法
May 02 Python
使用python画社交网络图实例代码
Jul 10 Python
pytorch 实现cross entropy损失函数计算方式
Jan 02 Python
pip安装提示Twisted错误问题(Python3.6.4安装Twisted错误)
May 09 Python
matplotlib基础绘图命令之bar的使用方法
Aug 13 Python
python基于tkinter制作m3u8视频下载工具
Apr 24 Python
Python selenium模拟网页点击爬虫交管12123违章数据
May 26 Python
简单了解python元组tuple相关原理
Dec 02 #Python
python实现智能语音天气预报
Dec 02 #Python
Python:二维列表下标互换方式(矩阵转置)
Dec 02 #Python
python 实现二维列表转置
Dec 02 #Python
python列表推导式入门学习解析
Dec 02 #Python
Python 矩阵转置的几种方法小结
Dec 02 #Python
numpy.transpose()实现数组的转置例子
Dec 02 #Python
You might like
php的计数器程序
2006/10/09 PHP
destoon二次开发入门示例
2014/06/20 PHP
ThinkPHP连接数据库的方式汇总
2014/12/05 PHP
PHP用正则匹配form表单中所有元素的类型和属性值实例代码
2017/02/28 PHP
PHP笛卡尔积实现算法示例
2018/07/30 PHP
javascript 模拟JQuery的Ready方法实现并出现的问题
2009/12/06 Javascript
一些实用的jQuery代码片段收集
2011/07/12 Javascript
jQuery中判断一个元素是否为另一个元素的子元素(或者其本身)
2012/03/21 Javascript
原生js实现shift/ctrl/alt按键的获取
2013/04/08 Javascript
Winform客户端向web地址传参接收参数的方法
2016/05/17 Javascript
js对象浅拷贝和深拷贝详解
2016/09/05 Javascript
vue.js中指令Directives详解
2017/03/20 Javascript
javascript中mouseenter与mouseover的异同
2017/06/06 Javascript
对Vue.js之事件的绑定(v-on: 或者 @ )详解
2018/09/15 Javascript
vue 实现cli3.0中使用proxy进行代理转发
2019/10/30 Javascript
Vue实现按钮级权限方案
2019/11/21 Javascript
[45:18]2018DOTA2亚洲邀请赛 4.3 突围赛 Optic vs iG 第一场
2018/04/04 DOTA
Python笔记(叁)继续学习
2012/10/24 Python
python实现bucket排序算法实例分析
2015/05/04 Python
Python获取系统默认字符编码的方法
2015/06/04 Python
python使用正则表达式替换匹配成功的组并输出替换的次数
2017/11/22 Python
python爬取足球直播吧五大联赛积分榜
2018/06/13 Python
启动Atom并运行python文件的步骤
2018/11/09 Python
Python命名空间的本质和加载顺序
2018/12/17 Python
美国知名的百货清仓店:Neiman Marcus Last Call
2016/08/03 全球购物
英国精品买手店:Browns Fashion
2016/09/29 全球购物
Carter’s OshKosh加拿大:购买婴幼儿服装和童装
2018/11/27 全球购物
小米乌克兰网上商店:Xiaomi.UA
2019/10/29 全球购物
本科生学习总结的自我评价
2013/10/02 职场文书
网络工程师的自我评价
2013/10/02 职场文书
大足石刻导游词
2015/02/02 职场文书
2015年上半年计生工作总结
2015/03/30 职场文书
《月光曲》教学反思
2016/02/16 职场文书
海弦WR-800F
2022/04/05 无线电
Golang jwt身份认证
2022/04/20 Golang
MySQL脏读,幻读和不可重复读
2022/05/11 MySQL