日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

Python字符串的創(chuàng)建和駐留機(jī)制詳解_python

作者:向陽花木 ? 更新時(shí)間: 2022-04-28 編程語言

字符串

  字符串在Python中是基本數(shù)據(jù)類型,是一個(gè)不可變的字符序列。

字符串駐留機(jī)制

  僅保存一份相同且不可變字符串的方法,不同的值被存放在字符串的駐留池中,Python的駐留機(jī)制對相同的字符串只保留一份拷貝,后續(xù)創(chuàng)建相同字符串時(shí),不會開辟新空間,而是把該字符串的地址賦給新創(chuàng)建的變量。

駐留機(jī)制的幾種情況(交互模式windows+r,cmd)

  1、字符串的長度為0或1時(shí)

  2、符合標(biāo)識符的字符串

  3、字符串只在編譯時(shí)進(jìn)行駐留,而非運(yùn)行時(shí)

b在運(yùn)行前連接abc,而c是在運(yùn)行時(shí)連接,因此c沒有駐留,開辟了新的空間

  4、[-5, 256]之間的整數(shù)數(shù)字

sys中的intern方法強(qiáng)制兩個(gè)字符串指向同一個(gè)對象

PyCharm對字符串進(jìn)行了優(yōu)化處理

?a = 'abc%'
?b = 'abc%'
?print(a is b) # True

字符串駐留機(jī)制優(yōu)缺點(diǎn)

  當(dāng)需要相同的字符串時(shí),可以直接從字符串池里拿出來用,避免頻繁的創(chuàng)建和銷毀,提升效率并節(jié)約內(nèi)存。因此拼接字符串和修改字符串是會比較影響性能的。

  在需要進(jìn)行字符串拼接時(shí)建議使用str類型的join方法,而非+,因?yàn)閖oin()方法是先計(jì)算出所有字符串中的長度,然后再拷貝,只new一次對象,效率比“+”高。

原文鏈接:https://www.cnblogs.com/0xiaoyu/p/15936011.html

欄目分類
最近更新