Игнасио только что дал идеальный ответ. Просто дополнение: когда вы конвертируете некоторую строку из кодировки с символами, не найденными в ASCII, в Unicode, вы должны передать кодировку в качестве параметра:
>>> unicode("órgão")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 0: ordinal not in range(128)
>>> unicode("órgão", "UTF-8")
u'\xf3rg\xe3o'
Если вы не можете сказать, какова оригинальная кодировка (в моем примере UTF-8), вы действительно не сможете конвертировать в Unicode. Это сигнал о том, что в ваших намерениях что-то не так.
И последнее, но не менее важное: кодировки довольно запутанные вещи. Этот подробный текст о них может прояснить их.