>>791
> 変換後の数値とはcp932の文字コードに存在しない2バイトの値です。
って書いてあるよ
cp932に存在しない文字を.encode('cp932')すると'?'になるから
.replace('?', '\x40a0') やってるのと同じになってしまうよ

s = u'あいうえお●かき★けこ'
d = { u'●':'0x40A0', u'★':'0x41A0'}
for k, v in d.items():
 s = s.replace(k, v)
print(s)