cupper, ты не прав насчет первой претензии к фаталексу, он не читает файл в оперативку, конструкция open(filename) не читает файл, а получает хэндлер на него, а когда он делат for line in filehandler то там идет итератор и построчное чтение, так что это пох

, насчет второго - это маленькие слабости py3k , там поправить -дело пары сек, нужно просто в print передавать хэндлер, но это так лирика

И раз уж меряетесь пиписьками, то всуну и я свою кривую реализацию
Код:
#! usr/bin/env python
#-*-encoding:cp1251-*-
try:
with open("input.txt") as inpt:
with open("out.txt", "a") as out:
account = {"mail":None,
"password":None}
for line in inpt:
line = line.translate(None, "\r\n")
if not line:
out.write("{0}:{1}\n".format(account["mail"], account["password"]))
account["mail"] = None
account["password"] = None
elif not account["mail"]:
account["mail"] = line
elif not account["password"]:
account["password"] = line
except Exception, e:
print e
на входе input.txt, на выходе будет out.txt
P.S. cupper, понял что смутило в твоем коде - бесконечный цикл