python基礎之字串

2022-08-27 22:48:20 字數 4727 閱讀 9920

python基礎變數主要有字元型和數值型兩種,相比於數值型資料,字元型資料可以理解成是一種文字,在語言領域的應用更加廣泛。python的字串資料型別屬於不可改變資料型別,所以當建立乙個變數的型別為字串時,這個變數的字串的字元不可以修改或者刪除,只能在乙個新的變數上進行操作。

python提供了以下幾種方式去標識字串(str):

單引號(')

雙引號(")

三引號('''或者""")

'

this is python'"

this is python"#

雙引號和單引號用法一樣,但不能混用

'''\

this is python a

this is python b

this is python c

'''#

三引號相對於單引號或者雙引號,可以換行保持整齊。

python字串轉義:

單引號轉義

雙引號與反斜槓轉義

指定字串

print('

what

) #python不能辨識這段字串從何處開始何處結束

輸出結果:

file

"d:/pystudy/字串.py

", line 129

print('

what

) ^syntaxerror: invalid syntax

print('

')#反斜槓轉義單引號

輸出結果:

what

'

print(r'd:\name\python') #用r(r)指定r(r)後面的單引號或雙引號標識的是乙個字串

輸出結果:

d:\name\python

a = '

abc'

b = '

def'

c = a +b

print

(c)d = '

ac' * 8

print

(d)輸出結果:

abcdef

acacacacacacacac

python的字串索引:

python的字串索引分為正索引和負索引,通常說的索引就是指正索引。正索引是從0開始的,也就是第乙個字母的索引是0,第二個索引是1,以此類推。負索引是從右到左去標記字母的,然後加上負號(-)。負索引的第乙個值是-1而不是0,如果是0,那麼會導致有兩個索引0,這種情況是不允許的。

字串  p   y   t   h  o   n

索引      0   1   2    3   4   5

負索引 -6  -5  -4  -3  -2  -1

python提取指定位置的字元:

name = '

python'#

索引 012345

a =name[0]

b = name[4]

print

(a)print

(b)輸出結果:

po

python字串切片和步長:

name = '

python'#

索引 012345

a = name[0:3]#

取字串索引012 不包含3

b = name[:-1] #

等於name[0:-1] 取字串索引01234不包含-1,這裡-1相當於5的意思

c = name[:6]

d = name[:]#

從左到右取字串

print

(a)print

(b)print

(c)print

(d)輸出為:

pytpytho

python

python

#步長(預設步長為1)

e = name[0:3:2]#

很明顯這裡加了個步長2,第乙個索引為0,2的意思就是每次索引加2,所以下乙個索引為0+2=2。

f = name[::2]#

從左到右取字元,從第乙個索引開始每個索引加2

g = name[-1:-4:-2]#

因為從右到左取字元,為負索引,索引步長也需要為負。

h = name[::-1]#

從右到左取字元,步長為-1,也就是反正字串

print

(e)print

(f)print

(g)print

(h)輸出為:

ptpto

nhnohtyp

python字串的方法:

全部大寫:

name = '

jiaming

'new_name =name.upper()

print

(new_name)

#把這個字串全部變成大寫

全部小寫:

name = '

jiaming

'new_name =name.lower()

print

(new_name)

#把這個字串全部變成小寫

以什麼開頭:

name = '

jiaming

'new_name = name.startswith('

jia')if

new_name:

print('

是以jia開頭')

#判斷這是不是字串是不是以jia開頭的

以什麼結尾:

name = '

jiaming

'new_name = name.endswith('ng'

)ifnew_name:

print('

是以ng結尾')

#判斷這是不是字串是不是以ng結尾的

統計出現的次數:

name = '

aaabbbccc

'new_name = name.count('a'

)print

(new_name)

#統計name這個字串中a出現的次數

字串替換:

name = '

我去你大爺的大爺的

'new_name = name.replace('

大爺,'**'

,1)#第乙個引數為要替換的字元或者字串,第二個引數為要替換的內容,第三個引數是指從左到右替換多少個大爺。

print

(new_name)

#替換字串中的內容

去除頭尾兩邊的空格:

name = '

jiaming

'new_name =name.strip()

new_name1 = name.lstrip()#

左邊的空格

new_name2 = name.rstrip()#

右邊的空格

print

(new_name)

#去除頭尾倆遍的空格

分割:

name = '

jia,ming

'new_name = name.split(","

)print

(new_name)

#通過,將字串name進行切割

字串格式化:

name = '

jiaming{}

'new_name = name.format('

好靚仔'

)print

(new_name)

#字串格式化

is系列:

判斷是不是阿拉伯數字,返回的是布林值:

name = '

jiaming

'new_name =name.isdigit()

print

(new_name)

#判斷是不是阿拉伯數字,返回結果是布林值

判斷是不是數字和字母,返回的是布林值:

name = '

jiaming

'new_name =name.isalnum()

print

(new_name)

#判斷是不是字母和數字,返回結果是布林值

判斷是不是純字母和漢字,返回的是布林值:

name = '

jiaming

'new_name =name.isalpha()

print

(new_name)

#判斷是不是純字母和漢字,返回的是布林值

獲取長度:

name = "

jiaming

"print

(len(name))

輸出結果:

7

python基礎之字串

1.單引號字串和轉義引號 在python中,字串是用單引號或者雙引號括起來,在表示字串的時候,單引號和雙引號有什麼區別嗎?事實上並沒有。在某些特殊情況時候,單引號和雙引號是不能換線交換的,比如在乙個字串中包含了雙引號,那麼這個字串就必須用單引號括起來,反之,乙個字串中包含了單引號,那麼這個字串就必須...

python基礎之字串

1.基本字串的操作 所有標準序列的操作 索引,分片,乘法,成員資格判斷,求長度,取最小和最大值 同樣適用,但是記住 字串都是不可變的。2.字串格式化 精簡版 字串的格式化可以使用字串格式化操作符 百分號 來實現。在 的左側放置乙個字串 格式化字串 而右側放置希望被格式化的值。可以使用乙個值,如乙個字...

python基礎之字串

字串的鏈結操作 用 字串的複製操作 用 字串的索引操作 通過索引可以訪問制定的位置的字元,索引從0開始 索引 列如 a hello world print a 0 輸出的結果 是 h 字串的擷取操作 完整格式 開始索引 結束索引 間隔值 從開始擷取到索引結束之前 結束索引之前 從開始索引擷取到字串最...