PTA - 列表去重重复人名

输入一系列以逗号分隔的英文人名,其中包含重复的名字,请将其中重复的名字去掉,输出包含不重复人名的列表,名字出现顺序与输入顺序相同。

输入格式:

一系列英文人名,以逗号间隔。

输出格式:

包含不重复人名的列表,名字出现顺序与输入顺序相同。

输入样例:

在这里给出一组输入。例如:

Calvin,bob,ada,McCord,Smith,Babbs,Calvin,Smith

输出样例:

在这里给出相应的输出。例如:

['Calvin', 'bob', 'ada', 'McCord', 'Smith', 'Babbs']

我的答案:

这道题似乎没有更多解决方法了

方法一:

name = input().split(",")
listA = []

for i in name:
    if (i not in listA):
        listA.append(i)
        
print(listA)

方法二:

from collections import OrderedDict

names = input().split(',')
unique_names = list(OrderedDict.fromkeys(names))
print(unique_names)

OrderedDict.fromkeys() 是 Python 中 collections 模块提供的 OrderedDict 类的一个方法,用于创建一个新的 OrderedDict 对象,其中键来自给定的可迭代对象,而值都设置为同一个默认值

语法:

OrderedDict.fromkeys(iterable, value=None)

参数:

  • iterable: 一个可迭代对象,例如列表、元组、字符串等,它包含了新 OrderedDict 对象的键。
  • value: 可选参数,指定新 OrderedDict 对象中所有键对应的默认值。如果未指定,则默认为 None

返回值:

  • 返回一个新的 OrderedDict 对象,其中键来自 iterable 对象,值都设置为 value

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值