用Python 3.4打印函数调用

2024-05-16 08:18:46 发布

您现在位置:Python中文网/ 问答频道 /正文

嗨,我在自学python,已经下载了3.4,正在学习thinkpython。我遇到的问题是打印网格。我不会把整个代码放上去,但这有点问题。在

def do_twice(f):  
    f()  
    f()

def print_beam():   
    print("+ - - - - ", )

def print_beams():  
    do_twice(print_beam)
    print("+")

现在调用这个函数时,应该打印出这样的光束

然而,实际输出是
+--
+--
+在

我花了两个小时在这上面,但是我使用的python版本与我正在写的书不同。谁能帮我摆脱这堵木头吗?在


Tags: 函数代码版本网格defdobeamprint
2条回答

使用python3来防止打印换行符,end=""如下所示:

print("+ - - - -", end="")

您可以阅读有关此here的文档

问题是,默认情况下,print函数在其输出的末尾创建一个新行。这里有个简单的解决方法。在

def do_twice(f):  
    f()  
    f()

def print_beam():   
    print("+ - - - - ", end='') #Don't create a new line.

def print_beams():  
    do_twice(print_beam)
    print("+")

相关问题 更多 >