完整脚本:https ://gist.github.com/4476526
有问题的具体代码是
# Cloud Files username & API key
username = ''
key = ''
# Source and destination container names
originContainerName = ''
targetContainerName = ''
...
def cloudConnect():
global originContainer
global targetContainer
global connection
print "Creating connection"
connection = cloudfiles.get_connection(username,key,servicenet=True)
print "-- [DONE]"
print "Accessing containers"
originContainer = connection.create_container(originContainerName)
targetContainer = connection.create_container(targetContainerName)
print "-- [DONE]"
return
该脚本工作得非常好,但是我在多个地方读到应该毫不犹豫地使用全局变量,并且几乎总是有更好的方法可以在没有它们的情况下做同样的事情。这是真的?如果是这样,我应该如何修复这个脚本?对我来说,使用全局连接和容器变量而不是将这些对象作为参数传递给多个函数似乎要容易得多。