如何将'u'前缀添加到列表或字符串?

时间:2017-11-06 19:39:55

标签: python string unicode

我一直有一些unicode问题并且意识到(有点太晚了,不可否认)在字符串中添加'u'前缀可以解决问题:

  
    

打印(u'No \ xebl')

         
      

诺尔

    
  

但是,我正在使用很多字符串和字符串列表,所以我需要为每个字符串添加该前缀(例如,我想将“u”添加到“string”,string ='No \ xebl “)。我尝试过不同的方法:

  
    

打印“你”+“'”+字符串

         

打印unicode(字符串)

         

打印“你”+字符串

         

print repr(unicode(m))#这样做会添加前缀'u',但会在字符串中添加额外的“\”,不再解决问题

         
      

u'No \ xebl'

    
  

列表继续,但你得到了要点。基本上,我想知道是否有一种方法与print(u'No \ xebl')完全相同,但是使用任何变量字符串而不必实际写下字符串。

任何建议都将不胜感激!

2 个答案:

答案 0 :(得分:2)

\xebISO 8859-1中对ë进行了编码。要从字节转换为Unicode字符串,请使用.decode()方法。

string.decode('iso-8859-1')

话虽如此:这些数据来自哪里?你知道它总是ISO 8859-1,还是可能编码不同?为什么它以字节为单位而不是Unicode字符串?这些问题的答案可能会提供更好的解决方案。

答案 1 :(得分:-1)

执行此操作

tempvariabel = u''
realvariabel = tempvariabel + somevariabelcontainUnicode

要打印时返回错误,但可以在文件或数据库上写入