a = 1
def func():
global a #聲明後就能夠修改全局的 a ,將會影響全局的 a 應儘可能不使用,由於不安全
a += 1
func()
print(a) #2
def max(a,b):
return a if a>b else b
def the_max(x,y,z):
c = max(x,y)
return max(c,z)
print(the_max(1,2,3)) #3
a = 5
def outer():
a = 1
def inner():
b = 4
print(a) #1
print('inner') #inner
def inner2():
nonlocal a #聲明上面第一層的局部變量 a 能夠修改,對全局變量無效
a += 1
print(a,b) #2 4
print('inner2') #inner2
inner2()
inner()
print('局部 a:',a) #局部 a: 2
outer()
print('全局 a:',a) #全局 a: 5
def func():
print(123)
func2 = func #函數名能夠賦值
func2() #123
l = [func,func2] #函數名能夠作爲容器類型的元素
for i in l:
i() #123
#123
def func():
print(123)
def wahaha(f):
f()
return f #函數名能夠做爲函數的返回值
qqxing = wahaha(func) #函數名能夠做爲函數的參數 123
qqxing() #123
def outer():
a = 1
def inner():
print(a)
# print(inner.__closure__)
return inner
inn = outer() #返回了內部閉包的函數地址
inn() #運行內部的函數
#import urllib #調用模塊
from urllib.request import urlopen
# ret = urlopen('https://home.cnblogs.com/u/bydzxzy/').read()
# print(ret)
def get_url():
url = 'https://home.cnblogs.com/u/bydzxzy/'
def get():
ret = urlopen(url).read() #爬取了網頁的原碼
print(ret)
return get
get_func = get_url()
get_func()