V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
songdg
V2EX  ›  Python

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

  •  
  •   songdg · 2020-08-31 01:21:26 +08:00 · 2447 次点击
    这是一个创建于 1306 天前的主题,其中的信息可能已经有所发展或是发生改变。
    譬如'我选 A' [ord('A')=65]转成'我选A' [ord('A')=65313]
    8 条回复    2020-09-02 09:29:42 +08:00
    ysc3839
        1
    ysc3839  
       2020-08-31 01:30:53 +08:00 via Android
    你举的例子应该是把半角字母转换成全角字母。
    可以直接用个 map 记录对应关系,然后遍历每个字符,去 map 中看是否有对应关系。
    ysc3839
        2
    ysc3839  
       2020-08-31 01:41:53 +08:00 via Android   ❤️ 1
    或者可以利用 Unicode 全角字符和对应的半角字符编码值相差 0xFEE0 的特性,先判断字符编码是否在要转换的范围内,是的话就加上 0xFEE0 。
    https://stackoverflow.com/a/36693548
    baobao1270
        3
    baobao1270  
       2020-08-31 05:00:14 +08:00   ❤️ 1
    1 、你的需求不叫 ASCII 转 UTF-8,而是全角转半角,准确的说是标准的西文字符转换为国标宽字符。ASCII 和 UTF-8 只是编码,而你要转换的是字符。
    2 、转换方式:查表
    fxxwor99LVHTing
        4
    fxxwor99LVHTing  
       2020-08-31 09:27:40 +08:00   ❤️ 1
    utf8 兼容 ascii 字符集的
    songdg
        5
    songdg  
    OP
       2020-09-02 09:26:50 +08:00
    @ysc3839 谢谢,知识太匮乏了。
    songdg
        6
    songdg  
    OP
       2020-09-02 09:29:29 +08:00
    @ysc3839 谢谢帮助,都没想到全角和半角的问题。
    songdg
        7
    songdg  
    OP
       2020-09-02 09:29:37 +08:00
    @fxxwor99LVHTing 谢谢帮助
    songdg
        8
    songdg  
    OP
       2020-09-02 09:29:42 +08:00
    @baobao1270 谢谢帮助
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3804 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 10:20 · PVG 18:20 · LAX 03:20 · JFK 06:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.