You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何不通过自定义字典获取0-255范围的扩展ASCII字符

你可以通过Python内置的bytes类型配合latin-1编码实现需求,不需要自定义字典:


数值转扩展ASCII字符

把0-255范围内的整数存入单元素bytes对象,用latin-1编码解码即可得到对应扩展ASCII字符。latin-1(即ISO-8859-1)的0-255码位和扩展ASCII完全一一对应,不会出现映射偏移:

def ext_ascii_chr(num: int) -> str:
    if 0 <= num <= 255:
        return bytes([num]).decode("latin-1")
    raise ValueError("输入数值需在0-255范围内")

扩展ASCII字符转数值

对单个扩展ASCII字符用latin-1编码后取首个字节的数值即可:

def ext_ascii_ord(char: str) -> int:
    encoded = char.encode("latin-1")
    if len(encoded) == 1:
        return encoded[0]
    raise ValueError("输入不是有效的单个扩展ASCII字符")

关键数值验证

你提到的四个核心数值映射完全符合预期:

  • 10 → 对应换行符(Line Feed),编码返回b'\x0a'
  • 13 → 对应回车符(Carriage Return),编码返回b'\x0d'
  • 26 → 对应替换符(Substitute),编码返回b'\x1a'
  • 255 → 对应非间断空格(nbsp),编码返回b'\xff'

该方案全程使用Python内置能力,没有额外依赖,也不需要手动维护字典映射。

内容的提问来源于stack exchange,提问作者Enigmacy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 11:15:00