本文主要是介绍五、函数_6.函数的作用域及函数文档,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
函数的作用域及函数文档
函数也有作用域
nonlocal关键字
局部函数内使用nonlocal引用一个外层函数已定义的局部变量后,可以对该局部变量进行更改等操作,但不会把该变量提升为全局变量
n = 10
N = 0
def outerScope() :
print('outer')
A = 1
global N
N += 5
print(N)
def innerScope() :
print('inner')
# 引用全局变量
global n
n += 10
print(n)
# 引用外层函数定义的局部变量
nonlocal A
A += 1
print(f'A = {A}')
# 定义全局变量
# global A
# A = 'global A'
# print(f'A = {A}')
# 引用全局变量N
global N
N += 10
print(N)
innerScope()
print(f'A = {A}')
outerScope()
print(N)
# print(f'A = {A}')
# innerScope() 无法调用函数内定义的函数
outer
5
inner
20
A = 2
15
A = 2
15
函数的文档
print(globals())
'
{
'__name__': '__main__',
'__doc__': '\n函数也有作用域\n\nnonlocal关键字\n局部函数内使用nonlocal引用一个已定义的局部变量后,可以对该局部变量进行更改等操作\n',
'__package__': None,
'__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x00000080BEBCF488>,
'__spec__': None,
'__annotations__': {},
'__builtins__': <module 'builtins' (built-in)>,
'__file__': 'G:/PyCharmProject/5.函数/8.函数的作用域及函数文档.py',
'__cached__': None, 'outerScope': <function outerScope at 0x00000080C06A3F78>
}
魔术变量
__name__ ==> 当前脚本是主程序则值为__main__,当前脚本作为模块被其他脚本引用则值为当前脚本文件名
__doc__ ==> 当前脚本的说明文档,即第一个 \''' 第一个三引号 \''' 中的内容
'
def document(time,place) :
'''
函数的说明文档用于解释函数的作用以及形参的信息
time:时间参数,作用:...
place:地点参数,作用:...
:return: 说明函数返回值
'''
return time
print(__name__) # 获取当前脚本文件名
print(__doc__) # 获取当前脚本说明文档
print(document.__doc__) # 获取当前函数说明文档
__main__
函数也有作用域
nonlocal关键字
局部函数内使用nonlocal引用一个外层函数已定义的局部变量后,可以对该局部变量进行更改等操作,但不会把该变量提升为全局变量
函数的说明文档用于解释函数的作用以及形参的信息
time:时间参数,作用:...
place:地点参数,作用:...
:return: 说明函数返回值
这篇关于五、函数_6.函数的作用域及函数文档的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!