首页 > 解决方案 > 为什么这两个代码的输出不同?

问题描述

第一个代码

s = input ('enter a word:')
s = s[:4] + 'X' + s[5:]
print (s)

输出:

enter a word: python
pytXon

其他代码

s = 'python'
s = s[:4] + 'X' + s[5:]
print (s)

输出:

pythXn

标签: python-3.xstring

解决方案


鉴于您的提示(没有尾随空格)以及您如何显示控制台中出现的内容,您几乎可以肯定输入了一个前导空格以使其看起来不错。如果你输出

print(repr(s))

你会注意到第一个实际上生成

" pytXon"

您可以在提示符中添加空格或换行符:

s = input('enter a word: ')  # OR
s = input('enter a word:\n')

和/或清理输入:

s = s.strip()

推荐阅读