如何停止额外的尾随换行符?

时间:2015-11-22 14:41:25

标签: python newline

这是我的代码:

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)

当用户没有输入任何内容时似乎添加了一个额外的空行,我不知道如何阻止它。有什么建议吗?

1 个答案:

答案 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='')