导入时,在单独的Python脚本中更改函数变量

时间:2017-06-12 20:39:47

标签: python

我在名为my_python_script-

的文件中有以下代码
def write_output(timestamp, name, alias, key, value, component, source, env):
    """ This is generic Function to write the output of the other scripts"""

    metrics_file = "/opt/reporting/data/metrics"
    data = "writing some stuff"
    with open(metrics_file, "a") as myfile:
        myfile.write(data)

当我执行import my_python_script时,我可以在导入后从单独的脚本中成功调用该函数。

有没有办法让它可以在我导入my_python_script的第二个脚本中更改“metrics_file”的值?我试图使它能够覆盖metrics_file变量并继续使用相同的函数?

感谢。

1 个答案:

答案 0 :(得分:2)

一个简单的解决方案是使文件名成为可选参数:

def write_output(timestamp, namename, alias, key, value, component, source,
                 env, metrics_file="/opt/reporting/data/metrics"):

默认使用与之前相同的文件名,但也可以使用不同的文件名调用它。