Jako tytuł, czy istnieje powód, aby nie używać str() do przesyłania ciągów Unicode do str ??Python Jaka jest różnica między str (u'a ') a u'a'.encode (' utf-8 ')
>>> str(u'a')
'a'
>>> str(u'a').__class__
<type 'str'>
>>> u'a'.encode('utf-8')
'a'
>>> u'a'.encode('utf-8').__class__
<type 'str'>
>>> u'a'.encode().__class__
<type 'str'>
UPDATE: dzięki za odpowiedź, także nie wiem, czy utworzyć ciąg za pomocą specjalnego znaku zostanie ona automatycznie konwertować na UTF-8
>>> a = '€'
>>> a.__class__
<type 'str'>
>>> a
'\xe2\x82\xac'
jest również obiektem Unicode w Pythonie 3