跳转到主要内容

编码/解码意大利税务代码 - 编码/解码意大利税号。

项目描述

python-codicefiscale

python-codicefiscale 是一个用于编码/解码意大利税务代码 - 编码/解码意大利税号 的库。

Codice Fiscale

功能

  • NEW 每周自动更新一次的 ANPR 数据源直接数据。
  • NEW 可用的 命令行界面
  • 姓名/姓氏 的转写
  • 多种 出生日期格式(日期/字符串) (您可以在 此处 查看所有支持的字符串格式)
  • 自动 从姓名检测出生地城市/外国国家代码
  • Omocodia 支持

安装

pip安装python-codicefiscale

使用方法

Python

导入

from codicefiscale import codicefiscale

编码

codicefiscale.encode(
    lastname="Caccamo",
    firstname="Fabio",
    gender="M",
    birthdate="03/04/1985",
    birthplace="Torino",
)

# "CCCFBA85D03L219P"

解码

codicefiscale.decode("CCCFBA85D03L219P")

# {
#     "code": "CCCFBA85D03L219P",
#     "gender": "M",
#     "birthdate": datetime.datetime(1985, 4, 3, 0, 0),
#     "birthplace": {
#         "name": "TORINO"
#         "province": "TO",
#         "code": "L219",
#     },
#     "omocodes": [
#         "CCCFBA85D03L219P",
#         "CCCFBA85D03L21VE",
#         "CCCFBA85D03L2MVP",
#         "CCCFBA85D03LNMVE",
#         "CCCFBA85D0PLNMVA",
#         "CCCFBA85DLPLNMVL",
#         "CCCFBA8RDLPLNMVX",
#         "CCCFBAURDLPLNMVU",
#     ],
#     "raw": {
#         "code": "CCCFBA85D03L219P",
#         "lastname": "CCC",
#         "firstname": "FBA",
#         "birthdate": "85D03",
#         "birthdate_year": "85"
#         "birthdate_month": "D",
#         "birthdate_day": "03",
#         "birthplace": "L219",
#         "cin": "P",
#     },
# }

检查

codicefiscale.is_valid("CCCFBA85D03L219P")

# True
codicefiscale.is_omocode("CCCFBA85D03L219P")

# False

命令行

此库也可以用作 CLI 工具,获取更多信息,请运行

python -m codicefiscale --help

编码(CLI)

python -m codicefiscale encode --firstname Fabio --lastname Caccamo --gender M --birthdate 03/04/1985 --birthplace Torino

解码(CLI)

python -m codicefiscale decode CCCFBA85D03L219P

测试

# clone repository
git clone https://github.com/fabiocaccamo/python-codicefiscale.git && cd python-codicefiscale

# create virtualenv and activate it
python -m venv venv && . venv/bin/activate

# upgrade pip
python -m pip install --upgrade pip

# install requirements
pip install -r requirements.txt -r requirements-test.txt

# install pre-commit to run formatters and linters
pre-commit install --install-hooks

# run tests using tox
tox

# or run tests using unittest
python -m unittest tests.tests

许可证

MIT 许可证 下发布。


支持

  • :star: 在 GitHub 上星此项目
  • :octocat: 在 GitHub 上关注我
  • :blue_heart: 在 Twitter 上关注我
  • :moneybag: 在 Github 上赞助我

另请参阅

  • python-benedict - 支持键列表/键路径的字典子类,I/O 快捷方式(base64、csv、json、pickle、plist、查询字符串、toml、xml、yaml)以及许多实用工具。 📘

  • python-fontbro - 友好的字体操作。 🧢

  • python-fsutil - 懒人开发的文件系统实用工具。 🧟‍♂️

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。

源分布

python_codicefiscale-0.10.3.tar.gz (419.0 kB 查看哈希值)

上传时间

构建分布

python_codicefiscale-0.10.3-py3-none-any.whl (430.9 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面