函数应该打印字符串还是返回它?

2024-06-17 08:19:53 发布

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

我正在编写一个Python脚本,它需要打印一行到控制台。很简单,但我不记得(或决定)是否接受的做法是在函数中打印,例如:

def exclaim(a):
    print (a + '!')

或者让它返回一个字符串,比如:

^{pr2}$

然后在主脚本中打印。我可以为任何一种方法辩护。有没有一个普遍接受的方法来做这件事,或者它取决于偏好?在


编辑:澄清一下,这不是我正在使用的功能。我不喜欢在这里发布代码,所以我把这些函数写成了一个过于简单的例子。在


Tags: 方法函数字符串代码功能脚本编辑def
3条回答

要记住的一点是,如果您打印它,您的函数将不会返回任何内容,因此,如果您计划使用您希望编写的行,您应该返回它。在

关于Python,我最欣赏的一点是它鼓励适当地分离关注点。把一个任务分解成原子组成部分几乎没有什么摩擦。在

计算一个值和显示一个值是两件不同的事情,它们不应该混在一起。在

通常,函数应该生成并返回其输出,并让调用者决定如何处理它。在

如果您直接在函数中打印结果,则很难重用该函数来执行其他操作,并且很难进行测试,因为您必须拦截stdout,而不仅仅是测试返回值。在

然而,在这个简单的例子中,似乎很难重用或测试函数,甚至根本没有必要拥有该函数。在

相关问题 更多 >