简体   繁体   中英

Adding multi-lines into one list?

I have multi-lines of Emails and I need to do a couple of things:

stephen.marquard@uct.ac.za
louis@media.berkeley.edu
zqian@umich.edu
rjlowe@iupui.edu
zqian@umich.edu
rjlowe@iupui.edu 
... etc
  1. I need to put them in one list: ['stephen.marquard@uct.ac.za','louis@media.berkeley.edu','louis@media.berkeley.edu' ..etc ]
  2. need to figure out which Email is the most repetitive within that list, That's how I startred my code and I hope I could complete it from where I ended my code!

     fname = raw_input("Enter file name: ") if len(fname) < 1 : fname = "mbox-short.txt" fh = open(fname) lines = [] count = 0 # For next step for line in fh: line = line.rstrip() if not line.startswith("From ") : continue x = line.split() emails = x[1] #print y maxapperence = 0 famous = None for mail in emails: count = emails.count(mail) if count > maxapperence: famous = mail print famous apparence = dict() for mail in set(emails): apparence[mail] = emails.count(mail) print apparence] 

    out put :

     stephen.marquard@uct.ac.za louis@media.berkeley.edu zqian@umich.edu rjlowe@iupui.edu zqian@umich.edu rjlowe@iupui.edu cwen@iupui.edu cwen@iupui.edu gsilver@umich.edu gsilver@umich.edu zqian@umich.edu gsilver@umich.edu wagnermr@iupui.edu zqian@umich.edu antranig@caret.cam.ac.uk gopal.ramasammycook@gmail.com david.horwitz@uct.ac.za david.horwitz@uct.ac.za david.horwitz@uct.ac.za david.horwitz@uct.ac.za stephen.marquard@uct.ac.za louis@media.berkeley.edu louis@media.berkeley.edu ray@media.berkeley.edu cwen@iupui.edu cwen@iupui.edu cwen@iupui.edu 

If you've got a file that only contains email addresses:

import collections
filename = ''
c = collections.Counter(map(str.strip, open(filename).readlines()))
print(c.most_common(10)) # dumb example of possible output format

First example

emails = """stephen.marquard@uct.ac.za
louis@media.berkeley.edu
zqian@umich.edu
rjlowe@iupui.edu
zqian@umich.edu
rjlowe@iupui.edu
cwen@iupui.edu
cwen@iupui.edu
gsilver@umich.edu
gsilver@umich.edu
zqian@umich.edu
gsilver@umich.edu
wagnermr@iupui.edu
zqian@umich.edu
antranig@caret.cam.ac.uk
gopal.ramasammycook@gmail.com
david.horwitz@uct.ac.za
david.horwitz@uct.ac.za
david.horwitz@uct.ac.za
david.horwitz@uct.ac.za
stephen.marquard@uct.ac.za
louis@media.berkeley.edu
louis@media.berkeley.edu
ray@media.berkeley.edu
cwen@iupui.edu
cwen@iupui.edu
cwen@iupui.edu""".split("\n")

maxapperence = 0 
famous = None
for mail in set(emails):
    count = emails.count(mail)
    if count > maxapperence:
        famous = mail
        maxapperence = count
print famous, maxapperence

You can also store all mail apparence

apparence = dict()
for mail in set(emails):
    apparence[mail] = emails.count(mail)
print apparence

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM