模块中常用操作的工具

olutils的Python项目详细描述


绝对值

简介

模块olutils提供了简化项目创建的通用工具它包括:

  • 使用logger类
  • 参数管理
  • 对象管理(复制、保存、加载)

安装

可以使用pip install命令安装olutils:

pip install olutils

用法

使用时间转换器和deep defaultdict:

importolutils# Building a deep default dict with datetimes as valuesflights=olutils.deepdefaultdict(lambdax:None,depth=2)# Filling itflights['Paris-NY']['departure']=olutils.str2dt("2019-01-15 08:00+01:00")flights['Paris-NY']['arrival']=olutils.str2dt("2019-01-15 10:30-05:00")flights['NY-Paris']['departure']=olutils.str2dt("2019-01-17 23:00-05:00")flights['NY-Paris']['arrival']=olutils.str2dt("2019-01-15 11:00+01:00")flights.pprint()

文件读取和对象存储:

importolutilsmy_dict={'key_1':"value_1",'key_2':2}my_rows=[{'col_1':11,'col_2':21},{'col_1':21,'col_2':22}]olutils.save(my_dict,"output/my_dict.json")olutils.save(my_rows,"output/my_rows.csv")olutils.save(my_rows,"output/my_rows.unknown",mthd="json")my_loaded_dict=olutils.load("output/my_dict.json")my_loaded_rows=olutils.load("output/my_rows.csv")my_loaded_rows_=olutils.load("output/my_rows.unknown",mthd="json")

对于开发人员

下载项目

使用代码克隆它:

git clone https://github.com/OctaveLauby/olutils.git
cd olutils

可以进行可编辑的代码安装:

pip install -e .

虚拟环境

使用新的pipenv功能(pip install pipenv

pipenv install
pipenv shell
...
exit

注释

  1. 不必导入Matplotlib:在这种情况下不加载打印子模块

  2. 也可以使用经典的虚拟环境:

python -m venv venv
source venv/Scripts/activate
python -m pip install -r requirements.txt
...
deactivate

分布

  1. 生成清单文件:
check-manifest --create
  1. 制造轮子:
python setup.py bdist_wheel
  1. 构建源分布:
python setup.py sdist
  1. 发布:
python setup.py bdist_wheel sdist
twine upload dist/*

For TestPyPi publication: twine upload --repository-url https://test.pypi.org/legacy/ dist/*

Not working on Git terminal for some reason

测试

python -m pytest olutils -vv
python -m pylint olutils --ignore-patterns=test*

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

推荐PyPI第三方库


热门话题
java如何克服带有空值的不可空bean级验证   “此行有多个标记”的authenticateUser上的java MySQLConnection错误   java处理Jackson异常   java Netbeans编辑器如何知道文件在撤消后不会被修改?   目标C相当于Java的ArrayList   java当需要int时,可以将short传递给方法调用吗?   drawString()方法上的java MouseListener   java服务器socket是执行此操作的最佳选项   java需要单个匹配bean,但找到了2:org。springframework。网状物servlet。mvc。方法注释。RequestMappingHandlerMapping   如何在Java中执行Windows命令?   安卓应用程序的java文件主机   java将所有spring引导属性都设置在内。将yml文件转换为系统属性   Java邮件中的html内联链接在邮件客户端中不起作用   Java二进制文件的bazel版本控制   java如何在自定义ListView中使用Intent   java(Spring MVC+Hibernate 4+Test 4)自动连线DAO返回NULL   java一次add()调用可以在Solr服务器中索引多少文档?   java如何获取Avro GenericRecord大小