-2

有什么办法可以防止 python 函数返回任何东西,甚至None?我需要一个像这样的输出:

[...]

[...]

但我总是得到:

[...]
没有任何
[...]

如果需要,我也可以上传源代码,但是有点长。

提前感谢您的任何回答!

4

3 回答 3

4

没有。只需检查if output is None:并相应地更改输出。

于 2015-09-15T19:28:35.867 回答
2

在 Python 中,表达式总是必须产生结果。函数调用是表达式,这里也不例外。因此,任何可调用的 (包括函数)都会产生结果,即使该结果是None. 从文档中:

调用总是返回一些值,可能是None,除非它引发异常。

你可以只测试None

result = functioncall()
if result is not None:
    # ...
于 2015-09-15T19:30:25.220 回答
2

好的,所以查看您的代码,我假设您正在打印生成最终结果的最后一行代码“再见!总分:9 分。”。您需要做的不是打印该行,而是返回它并打印函数调用,如下所示。此外,函数总是返回一些东西,无论是字符串、int 还是您设置的任何类型的数据。如果您选择不返回任何内容,它将始终返回 None。因为如果您想知道 \n 是什么意思,它会打开一个新行,因为您似乎想要游戏会话之间的行空间。如果不是,您可以摆脱 \n 它不会影响结果。无论如何希望这会有所帮助!

def no_name():
    # return the line of code that generates this outcome instead of printing it
    #to get rid of the None.


    return "Goodbye! Total score: 9 points.\n"



print no_name()
于 2015-09-16T03:43:46.960 回答