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

Python中如何在循环里打印数字对应的ASCII字符?

解决Python中打印数字对应ASCII字符的问题

我来帮你搞定这个问题!你现在的问题出在字符串转义和格式化的时机不对,咱们一步步拆解:

为什么你的代码没达到预期?

你写的代码:

for i in range(100, 150): 
    b = "\%d" %i 
    print(b)

这里的\%是把百分号转义成了字面量的%,所以格式化后得到的是\100、\101这类字符串——Python只会在解析字符串字面量的时候处理转义序列,而运行时拼接出来的\和数字并不会被当作转义序列解析,自然就输出了字面内容。

正确的实现方法

这里有几种简单直接的方式,都能帮你打印数字对应的ASCII字符:

方法1:使用内置函数chr()

这是最直观的方式,chr()函数专门用来把整数(Unicode码点,ASCII是它的子集)转换成对应的字符:

for i in range(100, 150):
    print(chr(i))

运行这段代码,就能直接输出d、e、f……这些ASCII字符了。

方法2:使用格式化字符%c

如果你习惯用格式化操作符,也可以用%c格式符,它会自动把整数转换成对应的字符:

for i in range(100, 150):
    char = "%c" % i
    print(char)

方法3:使用f-string的格式说明符(Python 3.6+)

对于Python 3.6及以上版本,用f-string会更简洁,加上:c格式说明符就能实现转换:

for i in range(100, 150):
    print(f"{i:c}")

这些方法都能完美实现你想要的效果,把100-150之间的整数转换成对应的ASCII字符输出。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 07:52:06