Printing Unicode Char inside a List

后端 未结 3 610
滥情空心
滥情空心 2020-12-11 23:21
a = [\'M\\xc3\\xa3e\']
b = \'M\\xc3\\xa3e\'
print a
print b

results:

[\'M\\xc3\\xa3e\']
Mãe

How can I print

3条回答
  •  爱一瞬间的悲伤
    2020-12-11 23:56

    In python2 you can subclass list class and use __unicode__ method:

    #Python 2.7.3 (default, Sep 26 2013, 16:38:10) 
    
    >>> class mylist(list):
    ...  def __unicode__(self):
    ...   return '[%s]' % ', '.join(e.decode('utf-8') if isinstance(e, basestring)
    ...                             else str(e) for e in self)
    >>> a = mylist(['M\xc3\xa3e', 11])
    >>> print a
    ['M\xc3\xa3e', 11]
    >>> print unicode(a)
    [Mãe, 11]
    

提交回复
热议问题