循环缓冲区的简单实现。

pycircularbuffer的Python项目详细描述


  • 许可证:麻省理工学院

摘要

简单的circular buffer 用python扩展编写。

CircularBuffer将为空的两个部分分配请求的大小+2字节 终止字符串。

如果使用缓冲区,可以临时分配另一半分配的字节 协议,我主要用它们来做正则表达式。

安装

只需从下载的源代码编译 可能是需要的。

使用

fromcircularbufferimportCircularBufferbuf=CircularBuffer(1024)buf.write(b'some text')whilelen(buf)>0:buf.read(1)fromreimportmatchbuf.write(b'hallo')# python2withbuf:match_found=match(br'^ha',buf)# python3match_found=match(br'^ha',buf)# use `result` immediately because regex didn't make memory copy of the# internal buffer, or run another `match()` on a memory copy, for example:match_found_str=buf.read(len(match_found.group(0)))independent_match_found=match(br'^ha',match_found_str)

警告

不要在python 3中这样做:buf中的a,而在buf中的b。

API

常规方法:

  • 清除()
  • read()
  • resize()
  • write()
  • write_available()
  • 使u成为连续的()

字符串方法:

  • count()
  • startswith()
  • find()
  • index()

顺序方法:

  • _包含
  • _获取项目
  • _长度
  • _设置项

魔法方法:

  • _重复

  • _ str_uuu()

    注意:虽然字符串表示使事情变得更容易,但它总是创建 记忆拷贝。

  • _输入uuu()

  • < P>

缓冲协议:

注意:对于python版本<;3,您需要使用context manager, 语句,以便在释放缓冲区时通知循环缓冲区。

使用缓冲区协议将引发 循环buffer.read()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Restlet方法和用户授权   cmake java演示项目无法使用我的清单创建“jar”。MF   java Tapestry 5用户身份验证   java和数组列表到整数   java由于某些原因,它不会添加到arrayList中   java从包外部获取对字段的packagelevel访问权限?   java Docker容器无法上载基于EMR的Hadoop   java数据源。找不到groovy。Grails2.4.4   java如何将“查找或创建”方法提取到抽象类?(Spring数据Jpa)   数组Java使用Gson将对象值更新为json文件   sqlite Swing JavasqlLite相对路径连接   java IllegalStateException和NoTouchElementException之间有什么区别   Spring中的java JDBC模板出现异常   java如何在这种通用方法中避免SuppressWarnings(“未检查”)?   HPQC OTA客户端Java API获取测试用例历史记录   大家好。我在主类中有getUserData方法。我想从主类调用这个方法。有人能帮我吗?