如何将 ASCII 的字母转成 UTF-8

2020-08-31 01:21:26 +08:00
 songdg
譬如'我选 A' [ord('A')=65]转成'我选A' [ord('A')=65313]
2611 次点击
所在节点    Python
8 条回复
ysc3839
2020-08-31 01:30:53 +08:00
你举的例子应该是把半角字母转换成全角字母。
可以直接用个 map 记录对应关系,然后遍历每个字符,去 map 中看是否有对应关系。
ysc3839
2020-08-31 01:41:53 +08:00
或者可以利用 Unicode 全角字符和对应的半角字符编码值相差 0xFEE0 的特性,先判断字符编码是否在要转换的范围内,是的话就加上 0xFEE0 。
https://stackoverflow.com/a/36693548
baobao1270
2020-08-31 05:00:14 +08:00
1 、你的需求不叫 ASCII 转 UTF-8,而是全角转半角,准确的说是标准的西文字符转换为国标宽字符。ASCII 和 UTF-8 只是编码,而你要转换的是字符。
2 、转换方式:查表
fxxwor99LVHTing
2020-08-31 09:27:40 +08:00
utf8 兼容 ascii 字符集的
songdg
2020-09-02 09:26:50 +08:00
@ysc3839 谢谢,知识太匮乏了。
songdg
2020-09-02 09:29:29 +08:00
@ysc3839 谢谢帮助,都没想到全角和半角的问题。
songdg
2020-09-02 09:29:37 +08:00
@fxxwor99LVHTing 谢谢帮助
songdg
2020-09-02 09:29:42 +08:00
@baobao1270 谢谢帮助

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/702692

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX