Python用户输入一个姓名,将中间位用星号替换掉,以保护隐私。
时间: 2023-05-25 20:06:36 浏览: 297
可以使用Python中的字符串切片和字符串拼接来实现:
```
name = input("请输入姓名:")
length = len(name)
if length == 2:
# 姓名只有2个字符,直接保留第一个字符,第二个字符用星号代替
result = name[0] + "*"
elif length > 2:
# 姓名大于2个字符,保留首尾字符,中间字符用星号代替
result = name[0] + "*" * (length - 2) + name[length-1]
else:
# 姓名为空或只有一个字符,不做处理
result = name
print("保护隐私后的姓名是:", result)
```
运行结果如下:
```
请输入姓名:张三丰
保护隐私后的姓名是: 张***丰
```
相关问题
用python编写用户输入一个姓名,将中间位用星号替换掉
可以使用Python的字符串操作来实现中间位用星号替换的功能。具体代码如下:
```python
name = input("请输入姓名:")
length = len(name)
if length <= 2:
print("输入的姓名太短了")
else:
middle = name[1:length-1]
star = "*" * len(middle)
new_name = name[0] + star + name[length-1]
print("替换后的姓名为:", new_name)
```
在这段代码中,首先需要获取用户输入的姓名。接着,通过`len()`函数获得姓名的长度,判断是否可以进行替换。如果长度小于等于2,那么直接输出提示信息。否则,使用切片操作获取中间的部分,使用`*`运算符生成相同长度的星号字符串,将星号替换到中间的部分,最后再将新的字符串输出即可。
用户输入一个姓名,将中间位用星号替换掉
Python代码如下:
```python
name = input("请输入姓名:")
length = len(name)
if length > 2:
# 如果姓名长度大于2,则中间位用星号替换
middle = '*' * (length - 2)
name = name[0] + middle + name[length - 1]
print("替换后的姓名为:", name)
```
输出:
```
请输入姓名:张三丰
替换后的姓名为: 张**丰
```