在python中,如何用非ascii字符替换字符串中的字符?
我想将数字符号(#)替换为一个类似于音乐尖符号的字符(♯). 我试过下面这句话,但没用在python中,如何用非ascii字符替换字符串中的字符?,python,string,non-ascii-characters,Python,String,Non Ascii Characters,我想将数字符号(#)替换为一个类似于音乐尖符号的字符(♯). 我试过下面这句话,但没用 res['n'].replace('#', '♯') 我也试过这些,但效果也不好 res['n'].replace('#', u'♯') res['n'].replace('#', '\xe2') 有人知道情况吗 import re text = ' ' re.sub(' ', '\x00', text) 为什么不使用此选项?Replace返回已更改的字符串,字符串本身无法更改。请重试 res="He#
res['n'].replace('#', '♯')
我也试过这些,但效果也不好
res['n'].replace('#', u'♯')
res['n'].replace('#', '\xe2')
有人知道情况吗
import re
text = ' '
re.sub(' ', '\x00', text)
为什么不使用此选项?Replace返回已更改的字符串,字符串本身无法更改。请重试
res="He##o"
res=res.replace("#","♯")
print res
o/t He♯♯o
res['n'] = res['n'].replace('#', '♯')
它“不起作用”。错误是什么?它对我来说工作得很好。什么是
res
?第一个对我有效。也许你希望replace()
在适当的位置修改字符串?replace()
不会这样做;它会创建一个新字符串。你需要编写res['n']=res['n']。replace('♯')代码>。♯ == \xe2\x99\xaf,不仅仅是\xe2Good point@ceremcem:还有,'\xe2\x99\xaf'.decode('utf-8')==u'\u266f'
。你为什么认为这与这个问题有着模糊的关联?