Python - 函数

时间:2017-11-08 15:00:46

标签: python

我的脚本中有一个函数,它接受两个参数并将结果保存到文件:

def listing(val, ftype):

    with open(sys.argv[3], "a+") as myfile:
        myfile.write(val + ftype + '\n')
    return

但是我想在只提供一个参数时使用它。我可以将参数定义为空字符串'',如下所示:

listing('', '\n[*]Document files found:\n')

这是处理空论点的唯一方法吗?

1 个答案:

答案 0 :(得分:2)

您可以为此目的使用默认参数

使用默认参数

def listing(val, ftype=''):

    with open(sys.argv[3], "a+") as myfile:
       myfile.write(val + ftype + '\n')
    return

致电:listing('\n[*]Document files found:\n') # need not give second argument

您还可以通过采用可变数量的参数

使其成为更通用的函数
def listing(*args):
     with open(sys.argv[3], "a+") as myfile:
          myfile.write("".join(args) + '\n')
     return

致电:listing('String1','String2','String3')