【问题标题】:Control being shifted to next line in a class [duplicate]控制被转移到类中的下一行[重复]
【发布时间】:2019-01-27 07:37:27
【问题描述】:
class car():
    def __init__(self,name,model,colour,pricerange,state):
        self.name = name
        self.model = model
        self.colour = colour
        self.pricerange = pricerange
        self.state = state

    def fthree(self):
        print("Name: "+self.name)
        print("Model: " + str(self.model))
        print("Colour: " + self.colour)

输出

Name: tiago

Model: 2016

Colour: white

我没有使用'\n'。但是控制正在转移到输出中的下一行。在 Python 中使用类时是否总是会发生这种情况?

【问题讨论】:

  • 在没有类的情况下尝试一下,看看它是不相关的。
  • 请使用标签说明您使用的是 Python 2 还是 Python 3。由于print 函数调用,我假设是 Python 3。
  • 无法使用 c = Car('a','b','c',10,'ca'); c.fthree() 重现 - 我没有得到空行。
  • 您向我们展示的代码本身并没有这个问题。也许您首先使用不正确的值调用它,并带有一个尾随换行符。你应该edit你的问题到minimal reproducible example

标签: python


【解决方案1】:

print 函数(在 Python 3 中)默认打印换行符:

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

objects打印到文本流文件,以sep分隔,后跟end

如果您不希望这种行为,请为end 传递一个空字符串:

print("hello ", end="")
print("world")

【讨论】:

    猜你喜欢
    • 2021-12-28
    • 2021-07-25
    • 1970-01-01
    • 2013-07-25
    • 2021-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多