请编写程序满足以下功能: (1)请用户在控制台输入一个身份证号; (2)如果用户输入的身份证号长度不为18,请输出“身份证号有误”; (3)如果身份证号长度为18,则输出该身份证号对应的年龄(虚岁)。
时间: 2023-05-23 22:04:41 浏览: 75
以下是Python实现代码:
```python
from datetime import datetime
id_number_str = input("请输入身份证号:")
if len(id_number_str) != 18:
print("身份证号有误")
else:
birth_year = int(id_number_str[6:10])
birth_month = int(id_number_str[10:12])
birth_day = int(id_number_str[12:14])
birth_date = datetime(birth_year, birth_month, birth_day)
today_date = datetime.now()
age = today_date.year - birth_date.year - ((today_date.month, today_date.day) < (birth_date.month, birth_date.day))
print("该身份证号对应的年龄为:%d岁" % age)
```
首先,程序要求用户在控制台输入一个身份证号,并且使用input函数来获取输入的身份证号。
接着,程序判断身份证号的长度是否为18,如果不是,则输出“身份证号有误”;否则,程序从身份证号中提取出出生年月日,并用datetime函数将其转换为datetime类型的日期。然后,获取当前日期,计算出年龄,最后输出该身份证号对应的年龄。
相关问题
微信小程序文本框有姓名,单位,职务,身份证号,手机号绑定值,点击确认控制台输出信息。代码演示
这里是一个微信小程序文本框的示例代码,包含了姓名、单位、职务、身份证号、手机号五个绑定值。用户在文本框中输入完毕后点击确认按钮,控制台会输出用户的信息。请注意,这里的输出方式只是为了演示方便,实际应用时需要根据需求进行相应的处理。
```
<view class="container">
<view class="form-item">
<text class="label">姓名:</text>
<input class="input" type="text" placeholder="请输入姓名" bindinput="bindNameInput" value="{{name}}"/>
</view>
<view class="form-item">
<text class="label">单位:</text>
<input class="input" type="text" placeholder="请输入单位" bindinput="bindCompanyInput" value="{{company}}"/>
</view>
<view class="form-item">
<text class="label">职务:</text>
<input class="input" type="text" placeholder="请输入职务" bindinput="bindJobInput" value="{{job}}"/>
</view>
<view class="form-item">
<text class="label">身份证号:</text>
<input class="input" type="text" placeholder="请输入身份证号" bindinput="bindIdInput" value="{{id}}"/>
</view>
<view class="form-item">
<text class="label">手机号:</text>
<input class="input" type="text" placeholder="请输入手机号" bindinput="bindPhoneInput" value="{{phone}}"/>
</view>
<view class="form-item">
<button class="btn" type="primary" bindtap="submitForm">确认</button>
</view>
</view>
```
在 js 文件中,我们需要定义五个变量来保存用户输入的信息:
```
data: {
name: '', // 姓名
company: '', // 单位
job: '', // 职务
id: '', // 身份证号
phone: '', // 手机号
}
```
同时,我们还需要编写五个事件处理函数,用于将用户输入的值绑定到相应的变量上:
```
bindNameInput: function (e) {
this.setData({
name: e.detail.value
})
},
bindCompanyInput: function (e) {
this.setData({
company: e.detail.value
})
},
bindJobInput: function (e) {
this.setData({
job: e.detail.value
})
},
bindIdInput: function (e) {
this.setData({
id: e.detail.value
})
},
bindPhoneInput: function (e) {
this.setData({
phone: e.detail.value
})
}
```
最后,我们还需要编写一个点击确认按钮的事件处理函数,用于将用户输入的信息输出到控制台:
```
submitForm: function () {
console.log('姓名:', this.data.name)
console.log('单位:', this.data.company)
console.log('职务:', this.data.job)
console.log('身份证号:', this.data.id)
console.log('手机号:', this.data.phone)
}
```
这样,我们就完成了微信小程序文本框的示例代码。当用户在文本框中输入完毕后点击确认按钮,控制台会输出用户的信息。
用Python写一个用身份证识别性别年龄地区。的程序
要编写一个识别性别、年龄和地区的程序,需要使用到身份证信息的解析库,比如`id-validator`。以下是一个使用Python编写的简单的身份证信息解析程序示例:
首先,安装必要的库:
```
pip install id-validator
```
然后,编写代码:
```python
from id_validator import validator
id_card = input("请输入身份证号码:")
# 验证身份证号码是否合法
if validator.is_valid(id_card):
# 解析身份证信息
info = validator.get_info(id_card)
# 获取性别
gender = "男" if int(info.gender) % 2 == 1 else "女"
# 获取出生日期
birth_date = info.birth_date
# 获取地区
region = info.region.name
# 输出结果
print("性别:", gender)
print("出生日期:", birth_date)
print("地区:", region)
else:
print("身份证号码不合法!")
```
在此示例中,我们使用了`id-validator`库来解析身份证信息。首先,用户需要输入身份证号码,程序将验证其是否合法。如果合法,我们将使用`get_info`函数来获取身份证的信息,包括性别、出生日期和地区。然后,我们将这些信息输出到控制台。
请注意,该程序使用的身份证信息解析库可能不支持所有国家/地区的身份证,因此在实际使用中,您需要先检查该库是否支持您所在国家/地区的身份证。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)