Как мне перехватить «разделенные» исключения в python?

Я пытаюсь проанализировать список адресов электронной почты, чтобы удалить имя пользователя и символ '@', оставив только имя домена.

Пример: (скрыто) Желаемый результат: gmail.com

Я выполнил это с помощью следующего кода:

for row in cr: 
    emailaddy = row[0]
    (emailuser, domain) = row[0].split('@')
    print domain

, но моя проблема заключается в том, что я сталкиваюсь с неправильно отформатированным адресом электронной почты. Например, если строка содержит «aaaaaaaaa» (вместо действительного адреса электронной почты), программа вылетает с ошибкой

(emailuser, domain) = row[0].split('@')
ValueError: need more than 1 value to unpack. 

(как и следовало ожидать). Вместо того, чтобы проверять все адреса электронной почты на их действительность, я бы предпочел просто не обновлять захват домен и переходите к следующей записи. Как мне правильно обработать эту ошибку и просто двигаться дальше?

Итак, для списка:

blahblah@gmail.com
mmymymy@hotmail.com
youououou
nonononon@yahoo.com

я бы хотел, чтобы результат был:

gmail.com
hotmail.com

yahoo.com

Спасибо!

6
задан the wolf 28 February 2012 в 06:00
поделиться