用python写一个通过输入身份证号,将出生日期8位替换成********
时间: 2023-09-04 11:08:13 浏览: 275
可以使用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为身份证和11为的手机号码,将身份证号中代表出生年月日的字符和手机号的4~7位用"*"号替换后输出
首先,我们需要创建一个Python程序,该程序会接收两个输入参数:一个18位的身份证号码和一个11位的手机号码。然后,程序将对身份证号中代表出生年月日的部分(第7位到第14位),以及手机号码的第4位到第7位进行替换,用星号(*)来隐藏这些数字。最后,程序会输出修改后的字符串。
下面是一个简单的Python程序实现:
```python
def mask_id_and_phone(id_number, phone_number):
# 检查身份证号码长度是否正确
if len(id_number) != 18:
return "身份证号码长度不正确,请输入18位身份证号码。"
# 检查手机号码长度是否正确
if len(phone_number) != 11:
return "手机号码长度不正确,请输入11位手机号码。"
# 对身份证号中的出生日期部分进行替换
birth_date = id_number[6:14]
masked_birth_date = '*' * len(birth_date)
# 对手机号码的中间四位进行替换
masked_phone = phone_number[:3] + '*' * 4 + phone_number[7:]
# 合并处理后的身份证号码和手机号码,并返回结果
result = id_number[:6] + masked_birth_date + id_number[14:] + ' ' + masked_phone
return result
# 输入身份证号码和手机号码
id_input = input("请输入18位身份证号码:")
phone_input = input("请输入11位手机号码:")
# 输出处理后的结果
print(mask_id_and_phone(id_input, phone_input))
```
你可以将上述代码复制到Python环境中执行,然后按照提示输入相应的身份证号码和手机号码,程序将会输出替换后的字符串。
身份证号由18位的字符组成,其中第7位至第14位是持有人的出生日期,现在需要将这8位字符全部替换成“*”以便保护持有人的隐私,请编程实现。 例如有身份证号:43060219990515401X,替换之后为:430602********401X
好的,我可以帮你编写一个Python程序来实现这个功能。你只需要输入身份证号码,程序就会自动将其中的出生日期部分替换成“*”。
```python
id_card = input("请输入身份证号码:")
id_card = id_card[:6] + "********" + id_card[14:]
print("替换后的身份证号码为:", id_card)
```
运行程序后,你可以输入你的身份证号码,程序会将其中的出生日期部分替换成“*”,然后输出替换后的身份证号码。注意,这个程序只能处理18位的身份证号码,如果输入的身份证号码不足18位或超过18位,程序会抛出异常。
阅读全文