def demo(): add = "http://task.lmcjl.com/python/" print("函数内部 add =",add) demo() print("函数外部 add =",add)程序执行结果为:
函数内部 add = http://task.lmcjl.com/python/
Traceback (most recent call last):
File "C:\Users\mengma\Desktop\file.py", line 6, in <module>
print("函数外部 add =",add)
NameError: name 'add' is not defined
def demo(name,add): print("函数内部 name =",name) print("函数内部 add =",add) demo("Python教程","http://task.lmcjl.com/python/") print("函数外部 name =",name) print("函数外部 add =",add)程序执行结果为:
函数内部 name = Python教程
函数内部 add = http://task.lmcjl.com/python/
Traceback (most recent call last):
File "C:\Users\mengma\Desktop\file.py", line 7, in <module>
print("函数外部 name =",name)
NameError: name 'name' is not defined
add = "http://task.lmcjl.com/shell/" def text(): print("函数体内访问:",add) text() print('函数体外访问:',add)运行结果为:
函数体内访问: http://task.lmcjl.com/shell/
函数体外访问: http://task.lmcjl.com/shell/
def text(): global add add= "http://task.lmcjl.com/java/" print("函数体内访问:",add) text() print('函数体外访问:',add)运行结果为:
函数体内访问: http://task.lmcjl.com/java/
函数体外访问: http://task.lmcjl.com/java/
#全局变量 Pyname = "Python教程" Pyadd = "http://task.lmcjl.com/python/" def text(): #局部变量 Shename = "shell教程" Sheadd= "http://task.lmcjl.com/shell/" print(globals())程序执行结果为:
{ ...... , 'Pyname': 'Python教程', 'Pyadd': 'http://task.lmcjl.com/python/', ......}
可以看到,通过调用 globals() 函数,我们可以得到一个包含所有全局变量的字典。并且,通过该字典,我们还可以访问指定变量,甚至如果需要,还可以修改它的值。例如,在上面程序的基础上,添加如下语句:print(globals()['Pyname']) globals()['Pyname'] = "Python入门教程" print(Pyname)程序执行结果为:
Python教程
Python入门教程
#全局变量 Pyname = "Python教程" Pyadd = "http://task.lmcjl.com/python/" def text(): #局部变量 Shename = "shell教程" Sheadd= "http://task.lmcjl.com/shell/" print("函数内部的 locals:") print(locals()) text() print("函数外部的 locals:") print(locals())程序执行结果为:
函数内部的 locals:
{'Sheadd': 'http://task.lmcjl.com/shell/', 'Shename': 'shell教程'}
函数外部的 locals:
{...... , 'Pyname': 'Python教程', 'Pyadd': 'http://task.lmcjl.com/python/', ...... }
#全局变量 Pyname = "Python教程" Pyadd = "http://task.lmcjl.com/python/" def text(): #局部变量 Shename = "shell教程" Sheadd= "http://task.lmcjl.com/shell/" print(locals()['Shename']) locals()['Shename'] = "shell入门教程" print(Shename) text()程序执行结果为:
shell教程
shell教程
#全局变量 Pyname = "Python教程" Pyadd = "http://task.lmcjl.com/python/" class Demo: name = "Python 教程" add = "http://task.lmcjl.com/python/" print("有 object:") print(vars(Demo)) print("无 object:") print(vars())程序执行结果为:
有 object:
{...... , 'name': 'Python 教程', 'add': 'http://task.lmcjl.com/python/', ......}
无 object:
{...... , 'Pyname': 'Python教程', 'Pyadd': 'http://task.lmcjl.com/python/', ...... }
本文链接:http://task.lmcjl.com/news/9557.html