2

这是我在想的一个例子:

def check_args():
    if len(sys.argv) < 2:
        sys.exit('Reason')
    if not os.path.exists(sys.argv[1]):
        sys.exit('ERROR: Folder %s was not found!' % sys.argv[1])
    global path
    path = sys.argv[1]

正如您在 check_args() 成功完成后所说的那样,“路径”变量具有普遍意义 - 您可以在其他函数中将其用作事实上的变量。

所以我在想是否有办法访问“路径”,例如 check_args.path?

在 python v3 中怎么样?

4

2 回答 2

3

Python 函数是对象。您可以在它们上定义任何您想要的自定义属性:

def a():
    a.test = 123

a()
a.test # => 123
于 2012-06-15T19:16:19.447 回答
0

您可以简单地返回值

def check_args():
    if len(sys.argv) < 2:
        sys.exit('Reason')
    if not os.path.exists(sys.argv[1]):
        sys.exit('ERROR: Folder %s was not found!' % sys.argv[1])
    path = sys.argv[1]
    return path

my_path = check_args()

或使用时if __name__ ...

if __name__ == '__main__':
    my_path = check_args()
    results = do_something(path)
于 2012-06-15T20:41:13.080 回答