Python - 模块级变量与Function参数?

时间:2015-12-26 06:46:18

标签: python

def doSomething()
   bucket = s3.get_bucket(BUCKET_NAME)
   ...

if __name__=="__main__":
    s3 = boto.connect_s3()
    doSomething()

VS

def doSomething(s3)
   bucket = s3.get_bucket(BUCKET_NAME)
   ...

if __name__=="__main__":
    s3 = boto.connect_s3()
    doSomething(s3)

对于这种情况,是否有最佳做法?这仍然是一个简单的场景。有时需要在doSomething上使用4-5个这样的变量,并且我从来没有形成一致的风格来处理这些变量。

1 个答案:

答案 0 :(得分:2)

我会使用函数参数,因为使用更简单的模拟更容易测试函数。

文档和重用也变得更好