我需要写入前一行的命令,比如print()而没有\ n。
以下是一些示例代码:
a=0
print("Random string value")
if a==0:
print_to_previous_line("is random")
和输出
Random string value is random
我知道我可以像print(“string”,value)那样在同一个打印命令中使用多个不同的东西,但这不是答案。理由太乱了,不能在这里解释,但这种“打印到上一行”将是完全正确的答案。那么它在现实中会是什么呢?
答案 0 :(得分:7)
在Python 3中,您可以通过向end=""
提供print()
来取消自动换行:
print("Random string value", end="")
if a==0:
print(" is random")
else:
print()
答案 1 :(得分:2)
我建议使用print语句,就像这样
print("This is a text",end=" ")
end =“”表示字符串不是'完整',下一个print语句需要在同一行中。字符串“”表示它应该在此String和下一个print语句中的String之间留一个空格。或者你也可以使用end =“”。 我希望这有帮助!
答案 2 :(得分:1)
我建议首先打印这样的声明:
print("Some stuff here", end=" ")
然后,我将使用以下if语句:
if stuff:
print("Text you want displayed on same line")
else:
print("")
print("Text you want displayed on next line")
答案 3 :(得分:0)
有时您无法控制继续执行打印语句(或这样做可能很困难)。然后,它将:
\033[F
ncols
前进:\03[{ncols}G
print(f"\033[F\033[{ncols}G Space-lead appended text")
我还没有找到转到上一行“结束”的方法,但是您可以指定一个值ncols
,该值大于上一行的长度。如果比前一行短了 ,您最终将覆盖那里的内容。
答案 4 :(得分:0)
def Fib(n):
a,b = 0,1
c=','
while(a<n):
print(a, end='') # Way to print in same line
a,b = b, a+b
if a<n:
print(c, end=',') # Way to ensure keep printing in same line
Fib(1000)