在一行Python中定义全局变量

时间:2014-12-03 05:52:26

标签: python

是否有更简洁的方法来定义全局变量,以便它们全部在一行中?

目前我有:

SUCCESS = 0                    # Declarations spanning multiple lines
FAIL = 0
TARGET = os.getcwd()
TIMEOUT = 2
MAXDEPTH = 0
ORIGINAL = ''
PATHS = {}

def main():
   aNumber,aString = 1,'hello' # Declarations in one line
   print aString

main()

3 个答案:

答案 0 :(得分:3)

它作为单独的行更具可读性(特别是如果你排列它们):

SUCCESS  = 0
FAIL     = 0
TARGET   = os.getcwd()
TIMEOUT  = 2
MAXDEPTH = 0
ORIGINAL = ''
PATHS    = {}

但如果你真的想在一行中做到这一点,那肯定!

SUCCESS, FAIL, TARGET, TIMEOUT, MAXDEPTH, ORIGINAL, PATHS = 0, 0, os.getcwd(), 2, 0, '', {}

答案 1 :(得分:2)

但是当你有很多变量时它并不是一个好主意,它不是用户可读的,当你初始化的变量很少时就会使用它。

SUCCESS, FAIL, TARGET, TIMEOUT, MAXDEPTH, ORIGINAL, PATHS  = 0, 0, os.getcwd(), 2, 0, '', {}               

答案 2 :(得分:2)

将它们放在一个单独的.py文件中(带有合理的名称)然后

from other_file import *

将它们全部放在一行是一个可读性的可怕想法