在一个函数中定义了另外一个函数
def outer():
def inner():
print(‘inner’)
print(‘outer’)
inner()
outer()
inner() # 此句会出错
函数有可见范围,这就是作用域的概念
内部函数不能被外部直接使用,会抛NameError异常
- 作用域
一个标识符的可见范围,这就是标识符的作用域。一般常说的是变量的作用域
全局作用域(global):在整个程序运行环境中都可见
局部作用域:在函数、类等内部可见;局部变量使用范围不能超过其所在的局部作用域
def fn1():
x = 1 # 局部作用域,在fn1内可见
def fn2():
print(x) # x可见吗?
print(x) # x可见吗?
输出函数
向屏幕输出指定的汉字
print(“hello world”)
1
print()函数可以同时输出多个字符串,用逗号“,”隔开
print(“hello”,“how”,“are”,“you”)
1
print()会依次打印每个字符串,遇到逗号“,”会输出空格,输出的内容是这样的:
hello how are you
1
print()可以打印整数,或者计算结果
print(300)
300print(100 + 200)
300
1
2
3
4
我们也可以把打印的结果显示的再漂亮一些
print(“100 + 200 =”, 100 + 200)
100 + 200 = 300
print('Hello World!')
def aaa():
print('this message is from aaa function')
def main():
print('this message is from main function')
if __name__ == '__main__':
main()
print ('now __name__ is %s' %__name__
print('Hello World!')
def aaa():
print('this message is from aaa function')
def main():
print('this message is from main function')
main()
aaa()
print('Hello World!')
def aaa():
print('this message is from aaa function')
def main():
print('this message is from main function')
main()
aaa()
del square(x):
return x ** 2
map(square,[1,2,3,4,5])
# 结果如下:
[1,4,9,16,25]
map(lambdax, y : (x**y,x+y),[2,4,6],[3,2,1])
# 结果如下
[(8,5),(16,6),(6,7)]