真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

第六天遞歸、匿名函數(shù)、推導式、變量存儲、模塊

全局變量:生存周期,整個文件;函數(shù)內(nèi)部、外部都能使,在函數(shù)前面后面定義都ok
def fun():
print(a+10)
a = 10
fun()

我們提供的服務有:網(wǎng)站制作、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、潛江ssl等。為成百上千企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術(shù)的潛江網(wǎng)站制作公司

全局變量和局部變量同名:新開辟空間了,并不是重新賦值
a = 10
print(id(a))
def fun():
a = 20
print(id(a))
fun()

global 在函數(shù)內(nèi)部聲明使用的是全局變量,盡可能放上面
下面代碼報錯了、

a = 10
print(id(a))
def fun():
a = 20
print("內(nèi)20",id(a))
global a
a = 15
print("內(nèi)15",id(a))
fun()
print(a)
print(id(a))
global b

函數(shù)內(nèi)使用全局變量,如果不用global聲明,則只能使用,不能修改;聲明過之后才能修改

匿名函數(shù):只能做簡單的事,就是個表達式
匿名函數(shù)格式:
1、函數(shù)名字 = lambda 形參1, 形參2, 形參 ... : 返回值
函數(shù)名字(實參1, 實參2, 實參...)
2、實參 = ( lambda 形參1, 形參2, 形參... : 返回值 ) (實參1, 實參2, 實參...)

寫法1:
fun = lambda num1, num2 : num1 + num2
print( fun(num = 1, num= 2))
寫法2:
ret_val = (lambda num1,num2: num1 + num2) (3,4)
print(ret_val)
遞歸關(guān)鍵:1、找遞歸的公式 例:4*(n-1)!
2、找遞歸的出口
3、自己調(diào)用自己

def step (形參):
#遞歸出口:
if n == 1:
return 1
else:
騷操作
return 公式( 騷操作 運算符 step(對形參的騷操作))
調(diào)用step()

for推導式:把for后變量放for()里循環(huán),然后每次循環(huán)得到for前變量,再把for前變量放列表里
關(guān)鍵:for 前的是放列表的,for 后的是放循環(huán)體里的,for外的[] 不要丟
例 把x 放到列表里循環(huán)100次,把i 放到range()里循環(huán)100次
lists = [ x for i in range(1,101)]

for if 推導式: for 的后循環(huán)要滿足 if 條件才能得到for 前變量

注:for 前 for 后可以是同一變量
for 后與列表無關(guān)可以用來代替
lists = ["*" for
in range(8)]
lists = [2 * i for i in range(1,9)]
lists = [ x for i in range(1,101) if x % 2 ==0]
lists = [ i for i in range(1,101) if i % 2 ==0]
lists = [ i*2 for i in range(1,11) if i % 2 ==0]
混合使用
例:
print((lambda
a:[i**2 for i in a])(2,3,4))

引用
a引用該空間數(shù)據(jù)

a = 1000
print(id(a))
a = 10 100
print(id(a))
b = 10
print(id(b))
b = 10
10
print(id(b))

a開了倆空間,b開了一個空間
python緩存池:放地址 將-5~256之間的數(shù)的地址放入緩存池,用了在取出

str1 = "hellopython"
print(id(str1))
str2 = "hello"+"python"
print(id(str2))
str1 = "hellopythonhello×××"
print(id(str1))
str2 = "hellopython"+"hellopython"
print(id(str2))

python緩存池:放地址 將0~20個字符之間的字符的地址放入緩存池,用了在取出

lists = [10,20,30]
print(id(lists))
lists.append(40)
print(id(lists))
dicts = {"names":"張三"}
print(id(dicts))
dicts["age"] = 18
print(id(dicts))

列表、字典沒有緩存池,列表、字典不管怎么加,用append/remove等,地址都一樣,不會新開辟;但是,切片和a = [1,2,3],b = [1,2,3] 是新開辟,可用 is 判斷,if a is b,就沒新開辟,如果不是,就新開辟了

可變類型:該類型可以在存儲空間修改內(nèi)容
不可變類型:該類型不可以在存儲空間修改內(nèi)容
不可變:int、str、float、tuple

模塊:任意.py文件,要求放同一目錄下,不然不好使,講包之后就好使了。別起中文
使用方法:import 文件名(模塊名,不加.py)
模塊名.函數(shù)名
相當于把另外文件所有都拷過來

while True 無限循環(huán),不叫死循環(huán),二者區(qū)別:一個故意設的,一個是寫錯了

while 5 也ok,相當于while bool(5),也是True


分享題目:第六天遞歸、匿名函數(shù)、推導式、變量存儲、模塊
網(wǎng)站網(wǎng)址:http://weahome.cn/article/peccjg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部