已经仔细检查了互联网,试图解决这个问题,但没有运气。据我所知,你通常只有一个return语句,但我的问题是我需要在return语句中有换行符,以便测试返回'true'。我试过的是抛出错误,可能只是一个新手的错误。我目前的功能是没有尝试换行。
def game(word, con):
return (word + str('!')
word + str(',') + word + str(phrase1)
新的换行符(\ n)是否应该在return语句中起作用?这不是我的测试。
答案 0 :(得分:12)
在python中,一个开放的paren会导致后续行被视为同一行的一部分,直到关闭paren。
所以你可以这样做:
def game(word, con):
return (word + str('!') +
word + str(',') +
word + str(phrase1))
但我不建议在这种特殊情况下。我提到它,因为它在语法上是有效的,你可以在其他地方使用它。
你可以做的另一件事是使用反斜杠:
def game(word, con):
return word + '!' + \
word + ',' + \
word + str(phrase)
# Removed the redundant str('!'), since '!' is a string literal we don't need to convert it
或者,在这种特殊情况下,我的建议是使用格式化的字符串。
def game(word, con):
return "{word}!{word},{word}{phrase1}".format(
word=word, phrase1=phrase1")
看起来它在功能上等同于你在你的身上做的但我真的不知道。后者就是我在这种情况下所做的事情。
如果你想在STRING中换行,那么你可以在任何需要的地方使用“\ n”作为字符串文字。
def break_line():
return "line\nbreak"
答案 1 :(得分:3)
您可以在return语句中拆分一行,但是您最后忘记了一个括号,并且还需要将其与另一个运算符分开(在本例中为+
)
变化:
def game(word, con):
return (word + str('!')
word + str(',') + word + str(phrase1)
要:
def game(word, con):
return (word + str('!') + # <--- plus sign
word + str(',') + word + str(phrase1))
# ^ Note the extra parenthesis
请注意,在str()
和'!'
上调用','
毫无意义。它们已经是字符串了。
答案 2 :(得分:1)
首先 - 您正在使用str()将多个字符串转换为字符串。这不是必要的。
第二 - 您的代码中没有任何内容可以在您正在构建的字符串中插入换行符。只是在字符串中间添加换行符不会添加换行符,您需要明确地执行此操作。
我认为你要做的就是这样:
def game(word, con):
return (word + '!' + '\n' +
word + ',' + word + str(phrase1))
我要离开str(phrase1)
的电话,因为我不知道短语1是什么 - 如果它已经是字符串,或者有这不应该不需要。.__str__()
方法
我假设您尝试构建的字符串跨越两行,所以我在最后添加了缺少的括号。
答案 3 :(得分:0)
简单易懂的代码
def sentence():
return print('ankit \nkalauni is\n the\n new\n learner\n in\n programming')
sentence()
输出:
ankit
kalauni
是
新
学习者
在
编程
在python中返回多行的简便方法