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
>>> 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']
- #303 , update setup.py, add install_requires chardet
- #302 , update fish_common.py, modify yaml load method.
- #300 , fish_logger 中的 log 文件默认后缀修改为 .log,日期移到文件名开头;
- 修改文档描述
- #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() ;
- 修改小错误
- 修改文档描述
- #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 支持;
- 为 flask应用添加 swagger模块 #249
- 数字金额和中文大写相互转换 #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