这是我的代码:
line = 'hi'
while line != '':
line = input('Sentence: ')
if '!' in line:
if list(line)[0] == '!':
reversed_text = ''
last_index = len(line) - 1
for i in range(last_index, -1, -1):
reversed_text += line[i]
print(reversed_text)
else:
print(line)
else:
print(line)
当用户没有输入任何内容时似乎添加了一个额外的空行,我不知道如何阻止它。有什么建议吗?
答案 0 :(得分:-1)
newline
基本上是print
打印空line
的结果。以此代码为例:
>>> a = input() # user presses enter (blank line)
>>> a
''
>>> print(a)
# a newline introduced by `print` function
>>>
然而,我们可以覆盖打印的这种默认行为 以print([object, ...][, sep=' '][, end='\n'][, file=sys.stdout])
形式打印
>>> a = ''
>>> print(a, end='')
>>>
总而言之,您需要在代码中执行的操作是将print(<somevalue>)
替换为print(<somevalue>, end='')