python输入一系列以逗号分隔的英文人名,其中包含重复的名字,请将其中重复的名字去掉,输出包含不重复人名的列表,名字出现顺序与输入顺序相同。
时间: 2024-03-06 11:48:42 浏览: 51
好的,以下是 Python 代码实现:
```python
names = input("请输入一系列以逗号分隔的英文人名:")
names_list = names.split(",") # 将输入的人名以逗号为分隔符转换为列表
unique_names = [] # 存放不重复的人名
for name in names_list:
if name.strip() not in unique_names: # 如果该人名未在 unique_names 中出现过
unique_names.append(name.strip()) # 则将该人名添加到 unique_names 中
print("不重复的人名列表为:", unique_names)
```
在这个代码中,我们首先通过 `input()` 函数获取用户输入的一系列以逗号分隔的英文人名,然后将其转换为列表。接着,我们定义了一个空列表 `unique_names` 用于存放不重复的人名。最后,我们使用 `for` 循环遍历输入的人名列表,对于每个人名,如果它未在 `unique_names` 中出现过,则将其添加到 `unique_names` 中。最终,我们通过 `print()` 函数输出了不重复的人名列表。
相关问题
python输入一系列以逗号分隔的英文人名输出包含不重复的人名列表,名字出现顺序与输入顺序相同
可以使用 Python 的 set 和 list 数据类型来实现。首先,使用 input() 函数获取以逗号分隔的人名字符串,然后使用 split() 函数将其分割成一个名字列表。接下来,使用 set() 函数将列表转换为集合,以去除重复的名字。最后,使用列表推导式将集合转换回列表,以保持原始的名字顺序。
下面是实现代码:
```
names_str = input("请输入以逗号分隔的英文人名:")
names_list = names_str.split(",")
unique_names_set = set(names_list)
unique_names_list = [name for name in names_list if name in unique_names_set]
print(unique_names_list)
```
使用示例:
```
请输入以逗号分隔的英文人名:Tom,Jack,Lucy,Tom,John,Lucy
['Tom', 'Jack', 'Lucy', 'John']
```
Python 输入一系列以逗号分隔的英文人名,其中包含重复的名字,请将其中重复的名字去掉,输出包含不重复人名的列表,名字顺序与输入顺序相同
好的,可以使用 Python 的 set 和 list 数据类型来实现去重。具体的代码如下所示:
```python
names = input("请输入一系列以逗号分隔的英文人名:")
names_list = names.split(",") # 将输入的人名转换为列表
result = []
seen = set() # 用于记录已经出现过的人名
for name in names_list:
if name not in seen: # 如果该人名没有出现过,则添加到结果列表和已出现集合
result.append(name)
seen.add(name)
print(result)
```
以上代码中,我们首先使用 `split` 方法将输入的人名以逗号为分隔符转换为列表。然后,我们定义了一个空的结果列表 `result` 和一个空的集合 `seen`,用于记录已经出现过的人名。接下来,我们遍历输入的人名列表,如果该人名没有出现过,则将其添加到结果列表和已出现集合中。最后,我们输出结果列表即可。
需要注意的是,输入的人名中可能会存在空格,所以在使用 `split` 方法时,我们没有指定分隔符,这样可以自动去除空格。