如何让Python中print的end=""在所有整数拼接完成后停止生效?
解决方案
你遇到的问题是因为循环内的print指定了end="",导致所有字符的ASCII码输出后没有自动换行,后续的print("word")会直接接在前面的输出末尾。以下是两种简单的解决方法:
方法1:循环结束后手动打印换行
在循环结束后添加一个不带参数的print(),它会默认输出换行符,把后续的word推到新一行:
name = 'john' for char in name: print(ord(char), end="") print() # 输出换行符 print("word")
方法2:先拼接结果再打印
更高效的方式是先把所有ASCII码转换成字符串并拼接,一次性打印,这样天然会自动换行,再打印word即可:
name = 'john' ascii_str = ''.join(str(ord(char)) for char in name) print(ascii_str) print("word")
两种方法都能得到你期望的输出:
106111104110 word
内容的提问来源于stack exchange,提问作者TishaBeing77
相关产品推荐
相关产品推荐

