在处理列表时遇到问题
试图找出如果元素出现多次,如何对其编号,从第二次出现开始,我想在“@”附近添加数字:
例如:
['example@company.com', 'example@company.com', 'none@comapny.com','example@company.com']
想要的输出:
['example@company.com', 'example2@company.com', 'none@comapny.com','example3@company.com']
迄今为止的代码:
count_apper=Counter(mails_list)
for values in count_apper.items():
for mail in mails_list:
if values[0]==mail:
number+=1
temp_var=mail.split("@")
temp_var[0]=temp_var[0]+f"{number}"
temp_var="@".join(temp_var)
print(temp_var)
number=1
输出:
example1@company.com
example2@company.com
example2@company.com
none2@company.com
您可以迭代列表并使用
dict
来跟踪特定地址的出现次数。要在@
符号之前添加文本,可以使用str
的.split
方法。可能的实现如下所示试试这个
我想我的答案是基于一个
collections.Counter()
的。它将为你做一些工作这应该给你:
相关问题 更多 >
编程相关推荐