2022-09-16

1.字符串的駐留機(jī)制

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

? ? ②駐留機(jī)制的幾種情況:

?? ?? ? *字符串的長(zhǎng)度為0或1時(shí)

?? ?? ? *符合標(biāo)識(shí)符的字符串。如字母、數(shù)字、下劃線

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

a='abc'

b='a'+'bc'

c=''.join(['ab','c'])

#結(jié)果為a is b 為True;b is c為False

?? ?? ? *[-5,256]之間的整數(shù)

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

import sys

a=sys.intern(b)

? ? ④PyCharm會(huì)對(duì)字符串進(jìn)行優(yōu)化處理。如兩個(gè)'abc%'會(huì)被認(rèn)為一個(gè)字符串

2.字符串的查詢操作

3.字符串大小寫的轉(zhuǎn)化

4.字符串的對(duì)齊

5.字符串的劈分

6.字符串的判斷


7.字符串的替換

8.字符串的比較

? ? ①運(yùn)算符:>,>=,<,<=,==,!=

? ? ②比較規(guī)則:首先比較兩個(gè)字符串中第一個(gè)字符,如果相等則比較下一個(gè),依次比較下去,直到兩個(gè)字符串不相等時(shí),其比較結(jié)果就是兩個(gè)字符串的比較結(jié)果,字符串的后續(xù)字符不再被比較。

? ? ③比較原理:兩個(gè)字符進(jìn)行比較是,比較的是其ordinal value(原始值),調(diào)用內(nèi)置函數(shù)ord可以得到指定字符的原始值。與內(nèi)置函數(shù)ord對(duì)應(yīng)的是內(nèi)置函數(shù)chr,調(diào)用內(nèi)置函數(shù)chr時(shí)指定ordinal value可以得到對(duì)應(yīng)的字符。

9.格式化字符串

? ? ①%作占位符:%s字符串,%i或%d整數(shù),%f浮點(diǎn)數(shù)。

?? ??? ?語法:"我的名字叫:%s,今年%d歲了" %(name,age)

? ? ②{}作占位符:'我的名字叫{0},今年{1}歲了'.format(name,age)

? ? ③f-string:print(f'我叫{name},今年{age}歲了')

print('{0:.3}'.format(3.1415926))? #.3表示的是一共3位小數(shù)

print('{:.3f}'.format(3.1415926))? #.3f表示是三位小數(shù)

print(':10.3f'.format(3.1415926))? #同時(shí)設(shè)置寬度和精度,一共是10位,3位是小數(shù)

10.字符串的編碼與解碼

? ? ①編碼:s.encode(encoding='GBK')

? ? ②解碼:s.decode(encoding='GBK')

? ? ③在GBK這種編碼中,一個(gè)中文占兩個(gè)字節(jié),在utf-8中一個(gè)中文字符占三個(gè)字節(jié)

11.去除空白

????①strip():去除字符串兩邊的空白

? ? ②lstrip():去除左側(cè)空白

? ? ③rstrip():去除右側(cè)空白

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • # 開發(fā)人員: hanhan丶 # 開發(fā)時(shí)間: 2020/10/21 14:37 ################...
    hanhan丶閱讀 441評(píng)論 0 1
  • 第一部分 初識(shí)Python語言 第1章 程序設(shè)計(jì)基本方法 1.1 計(jì)算機(jī)的概念 計(jì)算機(jī)是根據(jù)指令操作數(shù)據(jù)的設(shè)備,具...
    不脫發(fā)的程序員閱讀 1,219評(píng)論 0 1
  • 一.字符編碼 學(xué)習(xí)Demo字符串也是一種數(shù)據(jù)類型,但是,字符串比較特殊的是還有一個(gè)編碼問題。 因?yàn)橛?jì)算機(jī)只能處理數(shù)...
    小哥_xiaoge閱讀 1,044評(píng)論 0 0
  • 1.單行注釋:“//”2.多行注釋:“/ /” if條件語句 1. if(bloolean 表達(dá)式){pass;...
    再也不喊餓閱讀 639評(píng)論 0 0
  • 1、標(biāo)識(shí)符 在C語言中,符號(hào)常量,變量,數(shù)組,函數(shù)等都需要一定的名稱,我們把這種名稱成為標(biāo)識(shí)符 標(biāo)識(shí)符...
    戰(zhàn)神大學(xué)生閱讀 1,980評(píng)論 0 4

友情鏈接更多精彩內(nèi)容