如何用Python3打印ASCII码32-127字符并实现同行显示?
解决Python打印ASCII 32-127字符同行显示的问题
原有代码问题分析
- 代码里
if order != 128的判断完全多余,range(32,128)只会生成32到127的整数,不会出现128 - 默认
print()函数末尾会加换行符\n,导致每个字符单独占一行
解决方案
方案1:修改print的end参数
直接在循环中指定end=' ',让每个字符输出后加空格而非换行:
for item in range(32, 128): print(chr(item), end=' ') # 可选:最后补一个换行,让输出格式更整洁 print()
注:ASCII 127是DEL控制字符,终端中通常显示为空白或特殊符号,属于正常现象。
方案2:拼接字符串后一次性打印
先将所有字符存入列表,再用空格连接成字符串打印,减少IO操作更高效:
ascii_chars = [chr(item) for item in range(32, 128)] print(' '.join(ascii_chars))
额外需求:按参考表分多行显示(每行16个字符)
如果需要和提供的ASCII映射表格式一致,每行显示16个字符,可以这样写:
ascii_chars = [chr(item) for item in range(32, 128)] # 每16个字符为一组打印 for i in range(0, len(ascii_chars), 16): print(' '.join(ascii_chars[i:i+16]))
内容的提问来源于stack exchange,提问作者Tiffany
相关产品推荐
相关产品推荐

