编写一个 Python 程序,读取data.txt文件中的数据,将其中的姓名、身份证、手机号码部分信息替换成*进行脱敏处理(见输出示例),结果输出到result.txt文件中
时间: 2024-05-24 14:14:34 浏览: 150
假设data.txt中的数据格式为:
```
张三,110101199001011234,13912345678
李四,120101198002022345,13812345678
王五,130101197003033456,13712345678
```
则可以使用下面的Python程序进行脱敏处理并输出到result.txt中:
```python
# 打开data.txt文件,读取数据
with open('data.txt', 'r') as f:
data = f.readlines()
# 对每一条数据进行脱敏处理
for i in range(len(data)):
parts = data[i].strip().split(',')
name = parts[0]
id_card = parts[1]
phone = parts[2]
# 将姓名中的除第一个字以外的所有字替换为*
name = name[0] + '*' * (len(name) - 1)
# 将身份证号码中的除前6位和后4位以外的所有数字替换为*
id_card = id_card[:6] + '*' * (len(id_card) - 10) + id_card[-4:]
# 将手机号码中的中间4位数字替换为*
phone = phone[:3] + '*' * 4 + phone[-4:]
# 将脱敏后的数据写入result.txt文件中
with open('result.txt', 'a') as f:
f.write(f'{name},{id_card},{phone}\n')
```
运行上述程序后,result.txt的内容应该如下所示:
```
张*,110101********1234,139****5678
李*,120101********2345,138****5678
王*,130101********3456,137****5678
```
阅读全文