【发布时间】:2015-02-27 09:55:25
【问题描述】:
我想将数字符号 (#) 替换为类似于音乐符号 (♯) 的字符。我尝试了以下行但没有用。
res['n'].replace('#', '♯')
我也试过这些,也没有正常工作。
res['n'].replace('#', u'♯')
res['n'].replace('#', '\xe2')
有人知道情况吗?
【问题讨论】:
-
它“没有用”。错误是什么?它对我来说非常好。
res是什么? -
第一个适合我。
-
也许您期望
replace()修改字符串?replace()不会那样做;它创建一个新字符串。你需要写res['n'] = res['n'].replace('#', '♯')。 -
♯ == \xe2\x99\xaf,不只是 \xe2
-
好点@ceremcem:另外,
'\xe2\x99\xaf'.decode('utf-8') == u'\u266f'。
标签: python string non-ascii-characters