全局变量和编码风格建议

时间:2013-03-20 15:37:48

标签: python global-variables

这个问题非常普遍,但我更了解python中的良好编码实践......

我想在任何函数中定义一个我可以在其中使用的常量,而不必将其作为参数传递,并且无需在声明之后在任何地方更改它 - 也许它很难让它变得不可能改变但不确定我是否可以这样做。

在编程风格(编码,名称约定等)方面,最好的方法是什么?

即, GLOBAL_CONSTANT = 'this_variable_will_not_be_changed'

我的python代码会有这种形式,它的风格也很好吗?

#!/usr/bin/env python

import sys
import os

GLOBAL_CONSTANT='this_variable_will_not_be_changed'

def test():
    print GLOBAL_CONSTANT
    return 0

def main():
    test()
    return 0

if __name__ == "__main__":
    main()

2 个答案:

答案 0 :(得分:8)

你的代码并没有真正做任何事情,所以我想这很好!关于代码样式,无论何时您有疑问,请参阅PEP 8.

没有比你已经给我们更多的信息,我不得不说你的约定没问题。

然而,严格遵守PEP-8并非必要。普遍的共识往往是“保持代码一致”。通过PEP-8格式的文件读取只会偶然发现Java-esque或匈牙利符号代码的“块”,这可能会令人困惑。

答案 1 :(得分:4)

在99%的情况下,这已经足够了。但如果您非常需要此值非常稳定,则可以检查this

BTW:通过反映其他语言中的所有内容来学习Python将是一件难事。试试忘记过去。学习Pythonic。