Skip to content
Battlemagnet1Public

About

这是一个基于Python的控制台应用程序,用于解析中国身份证号码并提取相关信息,包括地区信息、生日、性别等。

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

身份证号码信息解析器 - 控制台版本

这是一个基于Python的控制台应用程序,用于解析中国身份证号码并提取相关信息,包括地区信息、生日、性别等。

功能特点

  • ✅ 身份证号码验证:支持15位和18位身份证号码格式验证
  • ✅ 地区信息提取:根据身份证前6位代码解析所在地区
  • ✅ 生日信息计算:提取出生日期并计算年龄
  • ✅ 性别判断:根据身份证号码判断性别
  • ✅ 批量处理:支持批量解析多个身份证号码
  • ✅ 用户友好界面:简洁的控制台菜单系统

安装要求

  • Python 3.6 或更高版本
  • 无需额外依赖包(仅使用Python标准库)

使用方法

运行程序

python SFZ_Console.py

程序功能

运行程序后,您将看到以下菜单选项:

==================================================
身份证号码信息解析器 - 控制台版本
==================================================
1. 解析身份证号码
2. 批量解析身份证号码
3. 退出程序
==================================================

1. 解析单个身份证号码

选择选项1后,输入身份证号码即可获得详细解析结果:

==================================================
身份证号码信息解析结果
==================================================
身份证号:110101199001011234
号码长度:18位
所在地区:未知地区(代码:110101)
出生日期:1990-01-01
出生年份:1990年
出生月份:01月
出生日期:01日
年龄:35岁
性别:男
==================================================

2. 批量解析身份证号码

选择选项2后,可以连续输入多个身份证号码,输入完成后输入 done 开始批量解析。

3. 退出程序

选择选项3退出应用程序。

身份证号码格式说明

15位身份证号码

  • 格式:6位地区码 + 6位出生日期(yymmdd) + 3位顺序码
  • 示例:110101900101123

18位身份证号码

  • 格式:6位地区码 + 8位出生日期(yyyymmdd) + 3位顺序码 + 1位校验码
  • 示例:110101199001011234

解析信息说明

  • 地区信息:根据身份证前6位地区代码解析所在行政区域
  • 生日信息:提取出生日期并自动计算当前年龄
  • 性别信息:根据顺序码判断性别(奇数为男性,偶数为女性)
  • 校验码:18位身份证号码会进行校验码验证

文件结构

SFZ_Console.py     # 主程序文件
README.md         # 说明文档

核心类说明

IDCardManager 类

  • validate_id_card() - 验证身份证号码格式
  • get_area_info() - 获取地区信息
  • get_birthday() - 获取生日信息
  • get_gender() - 获取性别信息
  • parse_id_card() - 完整解析身份证号码

IDCardConsole 类

  • show_menu() - 显示主菜单
  • parse_single_id() - 解析单个身份证号码
  • parse_batch_ids() - 批量解析身份证号码
  • run() - 运行控制台应用程序

注意事项

  1. 程序使用简化的地区代码映射,实际应用中可能需要完整的地区代码数据库
  2. 身份证号码验证遵循国家标准格式
  3. 年龄计算基于当前系统时间
  4. 程序会自动去除输入中的空格和特殊字符

许可证

本项目仅供学习和参考使用。

作者

基于原始图形界面版本转换的控制台版本

About

这是一个基于Python的控制台应用程序,用于解析中国身份证号码并提取相关信息,包括地区信息、生日、性别等。

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages