На Ubuntu 12.10 и терминале GNOME ошибка не возникает, когда программа печатает на stdout или подключается к каналу для других программ. И кодирование файлов, и терминальное кодирование - UTF-8 .
$ cat a.py
# -*- coding: utf-8 -*-
print "åäö"
$ python a.py
åäö
$ python a.py | tee out
åäö
Какую ОС и эмулятор терминала вы используете? Я слышал, что некоторые из моих коллег сталкиваются с подобными проблемами при использовании iTerm & nbsp; 2 и OS X; iTerm & nbsp; 2 может быть виновником.
Обновление: этот ответ неверен - подробнее см. комментарии