暗夜之隐 发表于 2021-7-25 09:49:54

字符串问题 求解

a = '\U000be900'   

上面的字符串 a需要转换成 'uBE900'    解求 如何转换

qq1151985918 发表于 2021-7-25 10:10:31

这是什么编码还是要什么规律?如果只是替换那很简单

暗夜之隐 发表于 2021-7-25 10:14:15

qq1151985918 发表于 2021-7-25 10:10
这是什么编码还是要什么规律?如果只是替换那很简单

无法替换 变量 a 长度为1 无法分割,无法直接用正则

qq1151985918 发表于 2021-7-25 10:16:15

暗夜之隐 发表于 2021-7-25 10:14
无法替换 变量 a 长度为1 无法分割,无法直接用正则

你把代码发一下,把案例发一下

暗夜之隐 发表于 2021-7-25 10:21:43

qq1151985918 发表于 2021-7-25 10:16
你把代码发一下,把案例发一下

a = '\U000be900'
aa = {'uBE900': '七'}

#把a 转换成 字典aa的键值

暗夜之隐 发表于 2021-7-25 10:27:56

暗夜之隐 发表于 2021-7-25 10:21


或者把aa字典的值 转换成a的样子也行。这样才能用字典来查询

逃兵 发表于 2021-7-25 10:34:28

只转这一个字符吗?其他字符的规律是什么呢?

暗夜之隐 发表于 2021-7-25 10:36:22

逃兵 发表于 2021-7-25 10:34
只转这一个字符吗?其他字符的规律是什么呢?

只转这一个 其它也是一样的a = '\U000be900'主要是这个变量a 长度为1   无法分割 无法正则 我也不知道是什么编码这个值的一个字库编码,我写入txt 就是一个方框

逃兵 发表于 2021-7-25 11:04:17

aa = 'uBE'+hex(ord(a))[-3:]

暗夜之隐 发表于 2021-7-25 11:08:54

逃兵 发表于 2021-7-25 11:04


谢谢 完全正确, 想问下这是什么原因

逃兵 发表于 2021-7-25 11:13:09

暗夜之隐 发表于 2021-7-25 11:08
谢谢 完全正确, 想问下这是什么原因

这个属于编码里的'\u'字符,所以认为是一个字符串
我是将字符转成对应的ascii码,chr()
再转成十六进制,hex()
提取整数部分[-3:]

暗夜之隐 发表于 2021-7-25 11:22:38

逃兵 发表于 2021-7-25 11:13
这个属于编码里的'%u'字符,所以认为是一个字符串
我是将字符转成对应的ascii码,chr()
再转成十六进制, ...

明白了 谢谢
页: [1]
查看完整版本: 字符串问题 求解