用python写一个通过输入身份证号,将出生日期8位替换成********
时间: 2023-09-04 16:08:13 浏览: 164
可以使用Python的字符串切片(slice)功能来实现。
身份证号是一个字符串,可以用input()函数来获取输入的身份证号。然后,用字符串切片的方式把身份证号的前6位和后4位保留,把中间的8位替换成8个星号。
代码如下:
```
id_card = input("请输入身份证号:")
new_id_card = id_card[:6] + "********" + id_card[-4:]
print("替换后的身份证号为:", new_id_card)
```
这个程序会通过input()函数获取用户输入的身份证号,然后把字符串切成三个部分,用加号(+)把它们连接起来,形成新的身份证号,最后用print()函数输出新的身份证号。
相关问题
用Python输入一个18位身份证号,用八个*替换其中代表出生年月的字符后输出,如果输入不足18位,输出error
身份证号码是一串18位数字和字母的组合,其中前17位代表地区、出生年月和顺序码等信息,最后一位是校验码。因此,如果要将出生年月替换成*,需要知道这些字符在身份证号码中的位置。
以下是一个示例代码,可以实现输入一个18位身份证号,用八个*替换其中代表出生年月的字符后输出。如果输入不足18位,则输出"error"。
```python
id_card = input("请输入18位身份证号码:")
if len(id_card) != 18:
print("error")
else:
id_card = id_card[:10] + "********" + id_card[18:]
print(id_card)
```
在这个代码中,我们首先检查输入的身份证号码长度是否为18位。如果不是,就输出"error"。如果是,就将原来的身份证号码从第11位到第18位替换成八个*,然后输出新的身份证号码。
需要注意的是,身份证号码的格式可能会因为不同的行政区划而有所不同,因此这个代码可能无法适用于所有的身份证号码。在实际应用中,需要根据具体情况进行调整。
输入一个18位身份证号,用8个*替换其中代表出生年月的字符后输出,如果输入不足18位,输入error
输入示例:320102199001011234
输出示例:320102********1234
输入示例:32010219900101
输出示例:error
代码示例(Python):
id_num = input() # 输入身份证号
if len(id_num) != 18: # 判断输入是否为18位
print("error")
else:
new_id_num = id_num[:10] + "********" + id_num[18-4:] # 将代表出生年月的字符替换为8个*
print(new_id_num)