only the most local and global namespaces can be modified : global « Function « Python Tutorial






x = 1
def fun(a):
    b=3
    x=4
    def sub(c):
        d=b
        global x
        x = 7
        print ("Nested Function\n")
        print locals()

    sub(5)
    print ("\nFunction\n")
    print locals()
    print locals()["x"]
    print globals()["x"]

print ("\nGlobals\n")
print globals()

fun(2)








10.10.global
10.10.1.only the most local and global namespaces can be modified
10.10.2.global Statement
10.10.3.Scoping example.
10.10.4.Demonstrates global variables
10.10.5.The global Statement
10.10.6.declare it in a global statement:
10.10.7.Within a function, you can't use both local and global versions of the same name