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模块学习 filecmp 文件比较
Aug 27 Python
Python中多线程thread与threading的实现方法
Aug 18 Python
Python计算回文数的方法
Mar 11 Python
Python NumPy库安装使用笔记
May 18 Python
python类和继承用法实例
Jul 07 Python
python 基础教程之Map使用方法
Jan 17 Python
Python实现字符串逆序输出功能示例
Jun 24 Python
简单学习Python多进程Multiprocessing
Aug 29 Python
基于python(urlparse)模板的使用方法总结
Oct 13 Python
Django RBAC权限管理设计过程详解
Aug 06 Python
python实现贪吃蛇双人大战
Apr 18 Python
python opencv pytesseract 验证码识别的实现
Aug 28 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重定向的3种方式
2013/03/07 PHP
php中adodbzip类实例
2014/12/08 PHP
PHP实现的分解质因数操作示例
2018/08/01 PHP
漂亮的提示信息(带箭头)
2007/03/21 Javascript
js获取鼠标点击的位置实现思路及代码
2014/05/09 Javascript
JavaScript截取字符串的2个函数介绍
2014/08/27 Javascript
浅谈JavaScript实现面向对象中的类
2014/12/09 Javascript
浅谈重写window对象的方法
2014/12/29 Javascript
jQuery循环遍历子节点并获取值的方法
2016/04/14 Javascript
js实现图片放大展示效果
2017/08/30 Javascript
vue路由嵌套的SPA实现步骤
2017/11/06 Javascript
使用Vue组件实现一个简单弹窗效果
2018/04/23 Javascript
JS/HTML5游戏常用算法之路径搜索算法 A*寻路算法完整实例
2018/12/14 Javascript
如何用vue-cli3脚手架搭建一个基于ts的基础脚手架的方法
2019/12/12 Javascript
通过实例解析JavaScript常用排序算法
2020/09/02 Javascript
python检测服务器是否正常
2014/02/16 Python
在Python操作时间和日期之asctime()方法的使用
2015/05/22 Python
python通过ssh-powershell监控windows的方法
2015/06/02 Python
在Django中进行用户注册和邮箱验证的方法
2016/05/09 Python
tensorflow学习教程之文本分类详析
2018/08/07 Python
python实现随机漫步方法和原理
2019/06/10 Python
使用selenium和pyquery爬取京东商品列表过程解析
2019/08/15 Python
在Django中实现添加user到group并查看
2019/11/18 Python
如何完美的建立一个python项目
2020/10/09 Python
欧铁通票官方在线销售网站:Eurail.com
2017/10/14 全球购物
学期自我鉴定范文
2013/10/01 职场文书
物流管理专业职业生涯规划书
2014/01/06 职场文书
《画家乡》教学反思
2014/04/22 职场文书
项目负责人任命书
2014/06/04 职场文书
俄语专业毕业生求职信
2014/07/12 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
项目委托协议书(最新)
2014/09/13 职场文书
2014年扫黄打非工作总结
2014/12/03 职场文书
2015年社区中秋节活动总结
2015/03/23 职场文书
如何利用opencv判断两张图片是否相同详解
2021/07/07 Python
Python如何使用循环结构和分支结构
2022/04/13 Python