
廢話不多說,一步一步看
1.字符串的表示
Python中的字符串是指用單引號、雙引號或者三引號引出的一組字符,例如:
(1)str_one = '我是用單引號引的字符串'
(2)str_two = ''我是用雙引號引的字符串''
(3)str_three = '''我是由三個單引號引的字符串'''
(4)str_four = """我是由三個雙引號引的字符串"""
對于字符串的表示很簡單,這里不多做說明,需要注意以下幾點(diǎn):
(1)如果一句話中本身就存在單引號,那么我們就用雙引號引它,如果一句話中本身就存在單引號,那么我們就用雙引號引它,就像 a = "this is a so 'cute' cat",b = '今天終于“星期四”了,好開心!'
(2)三引號引出的字符串可以換行,如下
str_one = '''
我是第一行
我是第二行
'''
2.字符串的取值
content = "Never stop learning!"
(1)索引:content [num]
num是一個數(shù)值,在代碼中,num從左到右的順序是0,1,2,3...,所以content[0] = 'N',content[1] = 'e',當(dāng)然我們也可以從右往左取,從右往左的下標(biāo)順序是-1,-2,代表倒是第一個,倒數(shù)第二個,如content[-1]='!'
(2)切片:content[m:n:s]m代表開始下標(biāo),n代表結(jié)束下標(biāo),取值時取m到n前一個的值,s代表步長
具體看下面代碼示例來理解字符串的獲取
content = "Never stop learning!"
print(content[0]) # N
print(content[-2]) # g
print(content[78]) # 超出字符串長度,報錯:IndexError: string index out of range
print(content[0:5:1]) # 截取從索引0~取到第四個,步長為1,前閉后開
print(content[0:5]) # 從第0個取到第四個,默認(rèn)步長為1
print(content[0:]) # 從第0個取到最后一個
print(content[:8]) # 截取從開始位置~ 位置8 的字符串
print(content[::]) # 截取完整的字符串
print(content[2:-1]) # 截取從索引2 ~ 末尾-1的字符串
print(content[-2:]) # 截取字符串末尾兩個字符
print(content[::-1]) # 字符串的逆序(拓展)
print(content[3:100]) # 和索引有區(qū)別,切片值返回切的的數(shù)據(jù),不報錯
print(content[20:100]) # 返回空 不報錯
print(content[0:-1:1]) # 倒數(shù)第一個不取
如有疑問,可以自己取打印一下上面的值,不難理解。
3.字符串的格式化
照例先看一下如下代碼
name = "lily"
age = 27.156789
print("%s今年%.2f歲" % (name, age)) # 1
print("I'm %(name)s. I'm %(age)d year old" % {'name': name, 'age': age}) # 2
print('{}今年{}歲'.format(name, age)) # 3
print('{1}今年{0}歲'.format(age, name)) # 4
print('{name}今年{a}歲'.format(name=name, a=age)) # 5
第1句:沒啥東西,主要就是用了格式化符,%s表字符串,%f代表浮點(diǎn)類型,%.2f代表浮點(diǎn)數(shù)保留兩位小數(shù)。
第2句:格式化符中間加(),里面填寫屬性名,跟后面賦值部分的屬性名稱相對照
第3句:.format格式開始,值的地方用{}占位i,然后.format()里填寫屬性即可
第4句:{}中間添加數(shù)值,代表的是.format()里相對的第幾個
第5句:{}中間添加屬性值,后面.format()里面改成賦值形式
格式化符對照表:
%s 字符串 (采用str()的顯示)
%r 字符串 (采用repr()的顯示)
%c 單個字符
%b 二進(jìn)制整數(shù)
%d 十進(jìn)制整數(shù)
%i 十進(jìn)制整數(shù)
%o 八進(jìn)制整數(shù)
%x 十六進(jìn)制整數(shù)
%e 指數(shù) (基底寫為e)
%E 指數(shù) (基底寫為E)
%f 浮點(diǎn)數(shù)
%F 浮點(diǎn)數(shù),與上相同
%g 指數(shù)(e)?或浮點(diǎn)數(shù) (根據(jù)顯示長度)
%G 指數(shù)(E)或浮點(diǎn)數(shù) (根據(jù)顯示長度)
%% 字符"%"
一般用到最多的也就%s,%d,%f等
4.字符串中常用的內(nèi)置函數(shù)
name = " lily Is A Big pig "
print(name.upper()) # 全部轉(zhuǎn)換為大寫
print(name.lower()) # 全部轉(zhuǎn)換為小寫
print(name.capitalize()) # 首字母大寫,其余小寫)
print(name.title()) # 首字母大寫
print(name.replace('Big', 'small')) # 替換,將big替換成small
print(name.find('Big')) # 查找字符串中是否有字符串,查找到則返回第一個下標(biāo),查找不到則返回-1
# print(name.index('hyq')) # 和find功能類似,區(qū)別在于index如果找不到會報錯:ValueError: substring not found
print(name.isdigit()) # 判斷是否是數(shù)字類型
print(name.strip()) # 前后的空格除去,這里把lily前面的空格和pig后面的空格去掉
print(name.lstrip()) # 去左邊空格
print(name.rstrip()) # 去左邊空格
print(name.count('g')) # 統(tǒng)計指定字符出現(xiàn)的次數(shù)
print(name.split(' ')) # 按指定字符分割字符串為數(shù)組
常用的內(nèi)置函數(shù)就不多說了,上面都有相對的注釋,嘻嘻!
好啦,關(guān)于字符串要整理的就這些拉,想起來再來補(bǔ)充,打完收工?。?/p>