文字エンコード

Pythonの文字エンコードの操作。
unistr ← UNICODE文字列
sjistr ← shift_jis文字列

で相互に変換。あってるのかな?


でもエラーになる

# coding: utf-8
f = open('out.txt','w')
fshi = open('shift_jis.txt')
f.write('あいうえお\n')
f.write(fshi.next().decode('shift_jis'))
f.close()
fshi.close()
Traceback (most recent call last):
  File "C:\temp\testpy\エンコード\utfwrite.py", line 5, in 
    f.write(fshi.next().decode('shift_jis'))
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-4: ordinal not in range(128)

ナゼダ?