实用函数和类

flotils的Python项目详细描述


我在许多项目中使用的一些实用函数和类。

https://img.shields.io/pypi/v/flotils.svghttps://img.shields.io/pypi/l/flotils.svghttps://img.shields.io/pypi/dm/flotils.svg

注意:此包不遵循unix原理。(它的作用超过 一件事)。 尽管有些模块将来可能会被转移到它们自己的包中, 目前还没有计划。

文档位于 GitHub

可记录

简化日志记录工作的模块

支持

  • 直接在实例上使用日志记录调用
  • 模块记录器
  • 可选实例ID
  • 将方法信息添加到日志中
  • 默认日志记录配置

class Demo(Logable)中,您可以直接使用日志记录调用 (例如self.debug()self.warning()self.exception(),..)来产生 结构化日志输出,如

DEBUG:Demo:working on something
INFO:Demo:Finished working
DEBUG:root:Inbetween
WARNING:Demo:Something might go wrong
ERROR:Demo:Something went wrong
WARNING:Demo:Told you!

Logable类允许您指定实例的id Demo({'id':"demo2"})导致

DEBUG:Demo.demo2:working on something
INFO:Demo.demo2:Finished working
DEBUG:root:Inbetween
WARNING:Demo.demo2:Something might go wrong
ERROR:Demo.demo2:Something went wrong
WARNING:Demo.demo2:Told you!

还支持方法信息:

2015-12-27 20:30:48 DEBUG   [Demo.demo2.work_on_something] working on something
2015-12-27 20:30:48 INFO    [Demo.demo2.work_on_something] Finished working
2015-12-27 20:30:48 DEBUG   [root] Inbetween
2015-12-27 20:30:48 WARNING [Demo.demo2.work_on_something_else] Something might go wrong
2015-12-27 20:30:48 ERROR   [Demo.demo2.work_on_something_else] Something went wrong
2015-12-27 20:30:48 WARNING [Demo.demo2.work_on_something_else] Told you!

有关如何启用此功能的信息,请查看 logable.default_logging_config

可加载

简化json(文件)工作的模块

支持

  • 以字符串和文件的形式加载/写入json
  • datetimedatetime支持的类型(保存并加载为UTC)
  • 类从/到文件加载/保存设置

LoadableLogable的子类,因此继承了所有日志记录 能力。

告诉class Demo(Loadable)从设置文件创建实例, 只要写Demo({'settings_file':"path/to/settings.json"})

__init__()中提供的设置将覆盖文件中设置的设置。

可运行

简化类的启动/停止的模块

支持

  • 可启动(类可以启动start()
  • 可停止(类可以停止stop()
  • 可启动(Startable()+Stopable()
  • signalstopwrapper(侦听sigterm和sigint信号并停止类)

历史记录

0.5.3(2019-08-03)

  • 更新支持的版本

0.5.2(2019-04-15)

  • pyyaml fullloader
  • 加载/保存错误修复

0.5.1(2019-04-14)

  • 修复json加载错误
  • 使json时间加载更为允许

0.5.0(2019-03-26)

  • 修复输入错误
  • flake8未绑定版本
  • 更新pyyaml
  • 删除不推荐的代码
  • fix open()调用(使用io.open(),无字节打开,utf8编码)
  • startstotable.is_正在运行
  • DateTimeen/无时区解码(始终为UTC)
  • 删除“python dateutil”依赖项
  • 基本可加载测试文件

0.4.2(2018-01-27)

  • 缺少合并

0.4.1(2018-01-27)

  • 小的初始更改

0.4.0(2018-01-27)

  • 添加便利模块(printablebase,fromtodictbase)
  • 将save_file/load_file添加到可加载文件
  • 删除不推荐的logexception,warn from logable
  • _可运行的未来导入

0.3.5a0(2017-03-06)

  • 可加载的新保存/加载方法中不推荐使用的camel case方法

0.3.4a0(2017-03-06)

  • 添加yaml加载/保存代码

0.3.3a0(2017-03-06)

  • 添加get_logger功能

0.3.2b0(2016-11-25)

  • 修复可加载中的相对导入

0.3.2a0(2016-08-14)

  • 将datetime.timedelta添加到jsonencoder/解码器

0.3.1a0(2016-03-31)

  • 在stotable.stop()中捕捉睡眠时的中断

0.3.0a0(2016-03-08)

  • 将Webscraper移动到自己的包

0.2.14b0(2016-03-02)

  • 修复对父init方法的丢失调用

0.2.13a0(2016-01-28)

  • 可运行(可启动、可停止、可启动、信号停止包装)

0.2.12a0(2016-01-07)

  • 韦伯斯克拉珀

0.2.11a0(2015-12-31)

  • 可加载
  • 更改的文档

0.2.10a0(2015-12-27)

  • pypi上的第一个版本。
  • 可记录

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

推荐PyPI第三方库


热门话题
Maven中的java,为什么要运行“mvn clean”?   java会降低图像质量。OutOfMemory异常Android   在Java8中将函数传递到流的过滤方法   jboss6。x java。lang.NoClassDefFoundError,当我将<listenerclass>包含到web时。xml java   java读取图像像素时,像素Alpha始终为255   java在迭代后跳过一行   java如何创建我自己的单链表   意图上的java空指针异常。getStringExtra.:安卓   具有连接实体的java Hibernate onetoone映射   java需要帮助在自制的仓鼠模拟器上实现启动/恢复/暂停/停止线程操作   如何测试非主方法?[Java,IntelliJ]   java jdbc自动提交(false)不起作用   java在JADE中的同一容器中创建多个代理   java OkHttp获取失败的响应正文   java Webdriver flash按钮