2014-12-31 154 views
3

我想用与称为音乐尖号(♯)的字符相似的字符来替换数字符号(#)。我尝试了下面的行,但没有工作。如何用python中的非ascii字符替换字符串中的字符?

res['n'].replace('#', '♯') 

我也试过这些,也没有正常工作。

res['n'].replace('#', u'♯') 
res['n'].replace('#', '\xe2') 

有人对这种情况有了解吗?

+2

它“没有工作”。错误是什么?它对我来说工作得很好。什么是“res”? – sushain97

+0

第一个适合我的作品。 –

+0

也许你在期待'replace()'修改字符串? 'replace()'不这样做;它创建一个新的字符串。你需要写'res ['n'] = res ['n']。replace('#','♯')'。 –

回答

2
res="He##o" 
res=res.replace("#","♯") 
print res 

o/t He♯♯o 
0
import re 
text = ' ' 
re.sub(' ', '\x00', text) 

为什么不用这个?

+0

你为什么认为这与这个问题甚至有点相关? –

0

替换返回改变的字符串,字符串不能被自己改变。尝试

res['n'] = res['n'].replace('#', '♯') 
相关问题