python基礎之字符串

Python基礎變量主要有字符型和數值型兩種,相比於數值型數據,字符型數據能夠理解成是一種文本,在語言領域的應用更加普遍。Python的字符串數據類型屬於不可改變數據類型,因此當建立一個變量的類型爲字符串時,這個變量的字符串的字符不能夠修改或者刪除,只能在一個新的變量上進行操做。python

Python提供瞭如下幾種方式去標識字符串(str):git

  1. 單引號(')
  2. 雙引號(")
  3. 三引號('''或者""")
'This is python'

"This is python" #雙引號和單引號用法同樣,但不能混用

'''\
This is python a
This is python b
This is python c''' #三引號相對於單引號或者雙引號,自身有以個

Python字符串轉義:app

  1. 單引號轉義
  2. 雙引號與反斜槓轉義
  3. 指定字符串
print('what's happend') #python不能辨識這段字符串從何處開始何處結束
輸出結果:
File "D:/pystudy/字符串.py", line 129
    print('what's happend')
                ^
SyntaxError: invalid syntax

print('what\'s happend')#反斜槓轉義單引號
輸出結果:
what's happend
print(r'D:\name\python') #用r(R)指定r(R)後面的單引號或雙引號標識的是一個字符串
輸出結果:
D:\name\python

Python的字符串拼接(相加)和字符串相乘:

a = 'abc'
b = 'def'
c = a + b
print(c)
d = 'ac' * 8
print(d)
輸出結果:
abcdef
acacacacacacacac

Python的字符串索引:spa

python的字符串索引分爲正索引和負索引,一般說的索引就是指正索引。正索引是從0開始的,也就是第一個字母的索引是0,第二個索引是1,以此類推。負索引是從右到左去標記字母的,而後加上負號(-)。負索引的第一個值是-1而不是0,若是是0,那麼會致使有兩個索引0,這種狀況是不容許的。code

字符串  P   Y   T   H  O   Norm

索引      0   1   2    3   4   5blog

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

Python提取指定位置的字符:ip

 

name = 'python'
#  索引  012345
a = name[0]
b = name[4]
print(a)
print(b)
輸出結果:
p
o

 

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)
輸出爲:
pyt
pytho
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)
輸出爲:
pt
pto
nh
nohtyp

 

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')
if new_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
相關文章
相關標籤/搜索