[英]Index of element from the list
我需要处理电子邮件列表,将其剪切并使用迭代计数器进行输出
MailList = [email1@gmail.com, email2@gmail.com, email3@gmail.com] # I have a list with emails
# I need to process them and get next output: "User%number% is email1" I'm using something like:
for c in MailList:
print('user'+ ' is '+c[0:7]) # what I need to insert here to get desirable counter for my output?
您需要使用@
拆分电子邮件:
>>> MailList = ['email1@gmail.com', 'email2@gmail.com', 'email3@gmail.com']
>>> for i in MailList :
... print ('user'+ ' is {}'.format(i.split('@')[0]) )
...
user is email1
user is email2
user is email3
如果我理解正确,那么您需要这样做:
MailList = ["email1@gmail.com", "email2@gmail.com", "email3@gmail.com"]
for index, value in enumerate(MailList):
print('user {} is {}'.format(index, value.split("@")[0]))
有关enumerate
详细信息,请参阅文档 。
使用itertools.takewhile
:
>>> import itertools
>>> MailList = ['email1@gmail.com', 'email2@gmail.com', 'email3@gmail.com']
>>> for x in MailList:
... print("user is {}".format("".join(itertools.takewhile(lambda x:x!='@',x))))
...
user is email1
user is email2
user is email3
使用index
:
>>> for x in MailList:
... print("user is {}".format(x[:x.index('@')]))
...
user is email1
user is email2
user is email3
使用find
:
>>> for x in MailList:
... print("user is {}".format(x[:x.find('@')]))
...
user is email1
user is email2
user is email3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.