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
(c)d = '
ac' * 8
(d)輸出結果:
abcdef
acacacacacacacac
python的字串索引:
python的字串索引分為正索引和負索引,通常說的索引就是指正索引。正索引是從0開始的,也就是第乙個字母的索引是0,第二個索引是1,以此類推。負索引是從右到左去標記字母的,然後加上負號(-)。負索引的第乙個值是-1而不是0,如果是0,那麼會導致有兩個索引0,這種情況是不允許的。
字串 p y t h o npython提取指定位置的字元:索引 0 1 2 3 4 5
負索引 -6 -5 -4 -3 -2 -1
name = 'python'#
索引 012345
a =name[0]
b = name[4]
(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[:]#
從左到右取字串
(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,也就是反正字串
(e)print
(f)print
(g)print
(h)輸出為:
ptpto
nhnohtyp
python字串的方法:
全部大寫:
name = 'jiaming
'new_name =name.upper()
(new_name)
#把這個字串全部變成大寫
全部小寫:
name = 'jiaming
'new_name =name.lower()
(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'
(new_name)
#統計name這個字串中a出現的次數
字串替換:
name = '我去你大爺的大爺的
'new_name = name.replace('
大爺,'**'
,1)#第乙個引數為要替換的字元或者字串,第二個引數為要替換的內容,第三個引數是指從左到右替換多少個大爺。
(new_name)
#替換字串中的內容
去除頭尾兩邊的空格:
name = 'jiaming
'new_name =name.strip()
new_name1 = name.lstrip()#
左邊的空格
new_name2 = name.rstrip()#
右邊的空格
(new_name)
#去除頭尾倆遍的空格
分割:
name = 'jia,ming
'new_name = name.split(","
(new_name)
#通過,將字串name進行切割
字串格式化:
name = 'jiaming{}
'new_name = name.format('
好靚仔'
(new_name)
#字串格式化
is系列:
判斷是不是阿拉伯數字,返回的是布林值:
name = 'jiaming
'new_name =name.isdigit()
(new_name)
#判斷是不是阿拉伯數字,返回結果是布林值
判斷是不是數字和字母,返回的是布林值:
name = 'jiaming
'new_name =name.isalnum()
(new_name)
#判斷是不是字母和數字,返回結果是布林值
判斷是不是純字母和漢字,返回的是布林值:
name = 'jiaming
'new_name =name.isalpha()
(new_name)
#判斷是不是純字母和漢字,返回的是布林值
獲取長度:
name = "jiaming
(len(name))
輸出結果:
7
python基礎之字串
1.單引號字串和轉義引號 在python中,字串是用單引號或者雙引號括起來,在表示字串的時候,單引號和雙引號有什麼區別嗎?事實上並沒有。在某些特殊情況時候,單引號和雙引號是不能換線交換的,比如在乙個字串中包含了雙引號,那麼這個字串就必須用單引號括起來,反之,乙個字串中包含了單引號,那麼這個字串就必須...
python基礎之字串
1.基本字串的操作 所有標準序列的操作 索引,分片,乘法,成員資格判斷,求長度,取最小和最大值 同樣適用,但是記住 字串都是不可變的。2.字串格式化 精簡版 字串的格式化可以使用字串格式化操作符 百分號 來實現。在 的左側放置乙個字串 格式化字串 而右側放置希望被格式化的值。可以使用乙個值,如乙個字...
python基礎之字串
字串的鏈結操作 用 字串的複製操作 用 字串的索引操作 通過索引可以訪問制定的位置的字元,索引從0開始 索引 列如 a hello world print a 0 輸出的結果 是 h 字串的擷取操作 完整格式 開始索引 結束索引 間隔值 從開始擷取到索引結束之前 結束索引之前 從開始索引擷取到字串最...