視覚的に同じように見えるので、これらの文字が異なる理由はわかりません。彼らは同じキャラクターの異なる表現ですか?または実際に異なる文字ですか?彼らの等価性を確認する方法はありますか?True
になりますか?これらの文字はどのように異なっていますか?
>>> s = u'\u2022'
>>> ss = '•'
>>> s == ss
False
>>> print u'\u2022' , '•'
• •
>>> ss = unicode(ss)
>>> ss == s
False
>>> repr(ss)
"u'\\xe2\\x80\\xa2'"
>>> repr(s)
"u'\\u2022'"
この問題、彼らは同じ文字 'BULLET'あるS' –
==' ss.decode( 'UTF-8')試してみてくださいPythonの 'unicode'型と関係があります。このような問題に直面したくない場合は、Python 3に切り替えることができます。 – ForceBru
Python 3で同じことを試してみてください。なぜなら、Python 2ではなくPython 3を使用する理由が個人的な理由になります。 – poke