为什么这两个代码的输出不同?

时间:2020-03-06 16:31:03

标签: python-3.x string

第一个代码

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

2 个答案:

答案 0 :(得分:2)

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

print(repr(s))

您会注意到第一个实际生成了

" pytXon"

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

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

和/或清理输入内容

s = s.strip()

答案 1 :(得分:0)

签出这个。

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


s = 'python'
s = s[:4] + 'X' + s[5:]
print (s)
相关问题