在循环项目时打印常规状态报告

report-on-interval的Python项目详细描述


……图片::https://badge.fury.io/py/report on interval.svg
:目标:https://badge.fury.io/py/report on interval
:alt:latest published version

图片::https://travis-ci.org/dusktreader/report-on-interval.svg?branch=master
:target:https://travis ci.org/dusktreader/report on interval
:alt:build status

**************
items
-----------------------------


此包提供一个函数,该函数只打印循环在iterable上迭代的
进度的信息。所以,假设有一个10K
的元素要迭代,每个元素需要一秒钟。在每处理1%的项目之后,获得一点输出不是很好吗?

有了间隔报告,就这么简单:

…代码块::python:

from report_on_interval import report_on_interval

处理了10000个项目中的400个项目

处理了10000个项目中的10000个项目


----
-要求:`python'版本3.4+
-通过pip安装:`$pip install report on interval`

其他选项
----

可能有用的附加参数:


*``message`


为报表提供自己的消息:

…代码块::python:

对于报告间隔中的错误(
错误生成器,
消息='{i}/{n}小错误被压扁,
):
压扁错误(错误)

*``项目计数`

如果您知道项目总数,则会出现这种情况。
否则,``report_on_interval``将iterable转换为list,然后,
poof!,编程生成项目的好处将消失。一个很好的
例子是迭代sqlalchemy查询的结果:

…代码块::python:

query=session.query(mymodel).filter(mymodel.column>;0)
按间隔(
query,
item\u count=query.count())筛选报表中的行,
):处理行



*``打印机`


提供不同于默认打印到标准输出的打印机。这通常是一个应用程序记录器:

。代码块::python:

来自我的应用程序。日志导入记录器
对于间隔报告中的奶酪(奶酪店,打印机=记录器):
请求奶酪(奶酪)

*``获取增量`


提供您自己的计算报告间隔的方法。默认情况下,使用“计算报告间隔”方法。对于超过10万个项目的iterables,此方法每处理1%后打印
,对于超过30个项目的iterables,此方法每处理10%后打印


。代码块::python:

def deltafier(n):
return n//7
也许你想在循环完成时报告,因为你不自己报告。不考虑口味……


*``额外操作`

提供在每个报告间隔执行的附加任务列表。
此功能的一个用途是s定期刷新
间隔上的数据库更新,并报告进度

。代码块::python:


):thingie.update(doodad=none)

*``在'u end``

完成循环后也执行额外操作。请注意,与
``report_at_end``参数类似,如果iterable中的项计数是报告间隔的精确
倍,则不会导致额外的报告
,并再次运行额外的报告。“报告间隔”中的逻辑可以确保

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

推荐PyPI第三方库


热门话题
java如何计算大于平均值的数字的百分比。?   JavaFX中后台执行任务的服务   xml解析用于解析java中推荐的xml解析器的小文档   java Nativescript+无法实例化接收器。。。。没找到上课的机会   maven是在数百个Java测试类上应用自定义JUnit测试运行程序的更简单方法   泛型如何引用接口在Java中实现的类类型?   java序列化程序SimpleXML只发送第一行   java字符串组合/排列   java无法创建EMRclient Sdkclientexception   JavaMaven不生成“persistence.xml”文件   java找不到主要方法   java中的正则表达式正负双精度   接口对于我试图解决的问题,有Java设计模式吗?   java在创建bean时获取异常   java如何创建<?使用JCodeModel扩展子类型>?   java在javafx中制作搜索栏   java Compare Hashmap with List=new Arraylist()   java接口与具体类