第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

【python深入1】?jī)?nèi)存管理

標(biāo)簽:
Python 人工智能

1)动态类型

1.1)核心思想

1python中"一切皆对象".作为"动态语言",python遵循"对象与引用分离"的核心思想.

1.2)一切皆对象

12345常见的变量,如整数、字符串、列表等,在python中一切皆为对象 = 1整数1为一个对象,是储存在内存中的实体.对象名a为一个引用,我们不能直接接触到"对象实体",只能通过引用指向去访问,引用可以随时指向一个新的对象.

1.3)赋值操作:可变对象、不可变对象

12345678910111213不可变数据对象:不能改变对象本身,只能改变引用的指向;如整形、字符串、元祖等 = 5= a= + 2解析:此时a = 7,b = 5.验证了不可变对象只能改变引用的指向,各个引用相互独立,互不影响. 可变数据对象:引用其元素(类似于L[0]),改变对象的本身;如列表,字典等 L1 = [1,2,3]L2 = L1L1[0= 100解析:此时L1 = L2 = [100,2,3].验证了可变对象可以通过引用其元素,改变对象本身

1.4)从动态类型看函数的参数传递

1234567891011121314151617def f(x):    = 100    print x     = 1f(a)print a解析:参数x是一个新的引用,指向a所指的对象.此处为不可变对象,引用a和x之间是相互独立的.参数x的操作不会影响引用a. def f(x):    x[0= 100    print x     = [1,2,3]f(a)print a解析:参照上一个例子,此处为可变对象传参,可以通过引用其元素改变对象本身.所以此处a和x都为[100,2,3]

1.5)垃圾回收

123456789python采取了一种简单的垃圾回收机制:即引用计数(from sys import getrefcount()).垃圾回收时,python不能进行其他任务,频繁的垃圾回收会大大降低python的工作效率.因此,python会在特定的情况下,自动启动垃圾回收机制. 通过gc模块查看垃圾回收阀值.import gcprint gc.get_threshold()输出(700,10,10)解析:700是垃圾回收的阀值:内存中分配对象的次数-取消分配对象的次数=700;可以通过set.threshold()设置. 手动启动垃圾回收机制:gc.collect()

1.6)分代回收

123456存活越久的对象,处于信任和效率,越不可能在后面的程序中变为垃圾,所以减少垃圾回收扫描他们的频率. python将所有的对象分为0,1,2三代.所有新建的对象都是0带对象.当经过某一次垃圾回收,依然存活,那么它就被归入下一代对象. 参考1.5,输出中包含210,分别代表:每100代对象垃圾回收,会进行11代对象垃圾回收;每101代对象垃圾回收,会进行12代对象垃圾回收我们在平时应该避免对2代对象频繁扫描:gc.set_threshold(700,10,20)


點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消