【问题标题】:is there a better way to set global variables in a script有没有更好的方法在脚本中设置全局变量
【发布时间】:2018-02-16 14:37:27
【问题描述】:

我在另一个文件中写了一个函数,基本上是doLostOfStuff 并调用它,我让我的 main.py 文件将变量传递给它。像这样的

def doLotsOfStuff(v1,v2,v3):
    return v1+v2+v3

def initializeVariables():
    v1= 1
    v2 = 2
    v3 = 3
    return(v1,v2,v3)

myV1,myV2,myV3 = initializeVariables()
doLotsOfStuff(myV1,myV2,myV3 )

问题是,在我的实际代码中,有很多变量,名字很长,初始化行大约有 90 列宽。

有没有更好/更简洁的方式来调用 doLotsOfStuff`?我只是觉得这使得代码不容易阅读。

【问题讨论】:

  • 对不起,如果你想要可读的代码,函数不应该做很多事情。有些人甚至认为一个函数应该做一件精确的事情。但是是的,拆包可以帮助您找到答案。
  • 您可能还可以合并对象属性中的一些变量并传递单个对象对它们进行分组。

标签: python coding-style


【解决方案1】:

你可以使用argument unpacking:

args = initializeVariables()
doLotsOfStuff(*args)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-04-04
    • 1970-01-01
    • 2021-06-21
    • 2012-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多