我需要在Python中将一个4字节的字符转换为其他字符。这是为了插入到我的utf-8 mysql数据库中而不出现错误,例如:"在第1行的'line'列中有不正确的字符串值:'\xF0\x9F\x94\x8E'"
往mysql中插入4字节Unicode时引发的警告显示应该这样做:
>>> import re
>>> highpoints = re.compile(u'[\U00010000-\U0010ffff]')
>>> example = u'Some example text with a sleepy face: \U0001f62a'
>>> highpoints.sub(u'', example)
u'Some example text with a sleepy face: '
然而,我遇到了与评论中的用户相同的错误,"...bad character range.."。显然,这是因为我的Python是UCS-2(而不是UCS-4)构建的。但是我不清楚应该怎么做?