20

给定这个示例函数:

def writeFile(listLine,fileName):
    '''put a list of str-line into a file named fileName'''
    with open(fileName,'a',encoding = 'utf-8') as f:
        for line in listLine:
            f.writelines(line+'\r\n')
    return True

这个return True声明有什么用吗?

有它和没有它有什么区别?如果没有返回函数会发生什么?

4

4 回答 4

32

如果函数未指定返回值,则返回None.

在 if/then 条件语句中,None计算结果为 False。所以理论上你可以检查这个函数的返回值是否成功/失败。我说“理论上”是因为对于这个问题中的代码,该函数不会捕获或处理异常,并且可能需要额外的强化。

于 2013-03-12T06:57:54.400 回答
3

如果没有写None明确的函数总是返回。return

于 2013-03-12T07:00:20.173 回答
2

如果你return True在函数的末尾有 ,你可以这样说:a=writeFile(blah, blah)

然而,因为它永远是True,它是完全没有意义的。如果文件写入正确等,最好返回 True。

如果您没有明确返回任何内容,则该值将是None

于 2013-03-12T07:04:57.380 回答
-1

如果没有对功能进行归因或检查,就单独拥有一个 return 语句没有多大意义。

如果没有返回任何内容,Python 将返回 None。在您的情况下,如果打开文件和写入成功,您可能应该返回 true

于 2013-03-12T07:11:07.140 回答