Skip to main content

some useful functions for python

Project description

https://travis-ci.org/chinapnr/fishbase.svg?branch=master https://coveralls.io/repos/github/chinapnr/fishbase/badge.svg?branch=master https://readthedocs.org/projects/fishbase/badge/?version=latest https://ci.appveyor.com/api/projects/status/ecskod12wy8fvkxu?svg=true

fishbase 简介

fishbase 是由我们开发和整理的一套 Python基础函数库,将我们平时在开发 Python项目时候的各类工具函数汇聚到一起,方便集中管理和使用。希望对你也有所帮助,也适合初学 Python 的朋友通过代码来学习。

fishbase 最新版本为 v1.6,支持 Python 3.5-3.10,绝大部分函数也能工作在 Python 2.7下,但是我们不推荐使用 Python 2.7。

fishbase 主要有以下功能模块:

模块

功能函数

fish_common

基本函数包

fish_crypt

加密数据函数包

fish_csv

csv处理增强函数包

fish_data

数据处理函数包,包括银行卡、身份证等

fish_date

日期处理增强函数包

fish_file

文件处理增强函数包

fish_logger

日志记录增强函数包

fish_project

项目目录结构生成函数包

fish_random

随机数据生成增强函数包

fish_system

系统增强函数包

安装

# 通过 pip 进行安装或者更新
pip install -U fishbase

fishbase 功能举例

获取文件的绝对路径

>>> from fishbase.fish_files import get_abs_filename_with_sub_path
>>> print(get_abs_filename_with_sub_path('/etc', 'hosts'))
(True, '/etc/hosts')

根据时间戳获取时间间隔

>>> from fishbase.fish_date import get_time_interval
>>> print(get_time_interval(1548575829,1548476921))
{'days': 1, 'hours': 3, 'minutes': 28, 'seconds': 28}

生成随机符合校验规则的身份证和银行卡数据

>>> from fishbase.fish_random import gen_random_id_card
>>> # 随机生成一个身份证号
>>> print(gen_random_id_card())
['3101091986******47']
>>> from fishbase.fish_random import gen_random_bank_card
>>> # 随机生成一个中国银行的信用卡卡号
>>> print(gen_random_bank_card('中国银行', 'CC'))
625907379******1

创建项目结构

>>> import os
>>> from fishbase.fish_project import init_project_by_yml
>>> package_yml = '''
... project: hellopackage
... tree:
...     - README.md
...     - requirements.txt
...     - setup.py
... '''
>>> # 通过 yml 文件创建一个项目结构
>>> init_project_by_yml(package_yml, '.')
>>> print(os.listdir('./hellopackage'))
['requirements.txt', 'README.md', 'setup.py']

更新记录

2022.9.13 v1.6

  • #303 , update setup.py, add install_requires chardet

  • #302 , update fish_common.py, modify yaml load method.

2021.7.20 v1.5

  • #300 , fish_logger 中的 log 文件默认后缀修改为 .log,日期移到文件名开头;

  • 修改文档描述

2021.6.23 v1.4

  • #288 , fish_date 中的 GetRandomTime 修改为 RandomTime,其中函数名称修改为 get_random_datetime_this_month() get_random_datetime_this_year() get_random_date_by_year() get_random_date_by_range();

  • #292 , fish_data 增加敏感数据掩码显示类 SensitiveMask,增加函数 get_idcard_number() get_bankcard_number() get_mobile_number() get_email() ;

  • 修改小错误

  • 修改文档描述

2020.4.25 v1.3

  • #273 , 随机数包的文档举例中的函数名称错误修正;

  • #275 , 随机数,gen_random_id_card() 函数优化;

2020.3.28 v1.2

  • #255 #266 , 开始使用 github 的 Actions 进行 CI 集成;

  • #257 , conf_as_dict() 函数移动从 common 包移动到 system 包;

  • #259 , 增加 fish_object 函数包,面向对象增强函数;

  • #260 , common 包,删除 sorted_objs_by_attr() 函数和 get_group_list_data() 函数;

  • #261 , common 包,paging 函数名称修改为 get_page_data();

  • #263 , common 包,删除一些为了向前兼容的函数;

  • #263 , 删除 flask swagger 支持;

2019.12.5 v1.1.16

  • 为 flask应用添加 swagger模块 #249

2019.7.17 v1.1.15

  • 添加可选参数,定义日志文件格式 #240

  • 根据银行卡、身份证获取详细信息的方法 #243

2019.6.25 v1.1.14

  • 修复金额数字转中文大写时多个零的错误 #238

  • 按照特定长度分割长文本字符 #239

2019.6.11 v1.1.13

  • 数字金额和中文大写相互转换 #235

详细帮助

更多详细文档,请参见:http://fishbase.readthedocs.io/

如有好的建议,欢迎提 issue :https://github.com/chinapnr/fishbase/issues

感谢

自2016年3月初次发布以来,先后发布了20余个版本,非常感谢所有在 fishbase函数包发展过程中做出贡献的朋友们!

fishbase函数包的作者名单,按照时间先后列出如下:

Yi Jun

Leo

Zhang Muqing

Hu Jun

Jia Chunying

Yan Runsha

Miao Tianshi

Jin Xiongwei

Wang Xiaolong

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fishbase-1.6.tar.gz (341.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page