录入学生的名字,如果名字存在则回复人名已存在,无法录入,直到输出空字符串,然后逆序输出。Python
时间: 2024-03-13 12:47:32 浏览: 54
好的,我来给你写一个 Python 的程序实现:
```python
names = []
while True:
name = input("请输入学生姓名:")
if name == "":
break
elif name in names:
print("人名已存在,无法录入!")
else:
names.append(name)
names.reverse()
print("学生姓名列表(逆序):")
for name in names:
print(name)
```
程序首先定义了一个空列表 `names` 来存储输入的学生姓名。然后进入一个无限循环,每次循环都会要求输入一个学生姓名。如果输入的是空字符串,则跳出循环;如果输入的姓名已经存在于列表中,则输出“人名已存在,无法录入!”;如果输入的姓名是一个新的姓名,则将其添加到列表中。循环结束后,程序使用 `reverse()` 方法将列表逆序排列,并使用 `for` 循环逐个输出学生姓名。
相关问题
python中录入学生的名字,如果名字存在则回复人名已存在,无法录入,直到输出空字符串,然后逆序输出
可以使用字典来存储学生名字,键为学生名字,值可以是任意值,比如 None。代码如下:
```python
# 创建一个空字典
name_dict = {}
# 循环录入学生名字
while True:
name = input("请输入学生名字(输入空字符串结束录入):")
if name == "":
break # 如果输入的是空字符串,则结束录入
elif name in name_dict:
print(name, "已存在,无法录入")
else:
name_dict[name] = None
# 输出录入的学生名字(逆序)
for name in reversed(list(name_dict.keys())):
print(name)
```
运行以上代码,输入学生名字,如果名字存在则会提示“已存在,无法录入”,直到输入空字符串为止。然后会按照录入的顺序的逆序输出学生名字。
用python写录入学生的名字,如果名字存在则回复人名已存在,无法录入,直到输出空字符串,然后逆序输出
好的,以下是代码实现:
```python
students = []
while True:
name = input("请输入学生姓名(输入空字符串结束):")
if name == '':
break
elif name in students:
print("{} 已存在,无法录入".format(name))
else:
students.append(name)
# 利用切片语法逆序输出
print("学生名单(逆序):")
for name in students[::-1]:
print(name)
```
运行结果如下:
```
请输入学生姓名(输入空字符串结束):张三
请输入学生姓名(输入空字符串结束):李四
请输入学生姓名(输入空字符串结束):王五
请输入学生姓名(输入空字符串结束):李四
李四 已存在,无法录入
请输入学生姓名(输入空字符串结束):
学生名单(逆序):
王五
李四
张三
```
阅读全文