---恢復內容開始---
一、字符串的索引與切片
1.索引
s = 'ASDFGHJKL'
有序序列,索引--index:從0開始
s1 = s[0],取出單個元素:A; s1是個全新的字符串和原字符串無關
2.切片
#想取ASDF:
s2 = s[0:4] 規律:顧頭不顧腚
#想取L:
s3 = s[-1]
#想全取
s4 = s[:] or s[0:]
s5 = s[0:-1],最后一位取不到
3.跳着取,加步長
s = 'ABCDLSESRF'
s6 = s[0:5:2] 取:ACL
4.反着取
s7 = s[4:0:-1] 取:LDCB
s8 = s[3::-1] 取:DCBA
s9 = s[3::-2] 取:DB
s10 = s[-1::-1] or s =[::-1] 取反
二、字符串常用操作方法
s = 'alexWUsir'
1.首字母大寫capitalize()
s1 = s.capitalize()
2.全部變成大寫upper(),全部小寫lower()
s2 = s.upper()
s21 = s.lower() eg:需求--驗證碼不區分大小寫,如何判斷輸入是否正確
3.大小寫翻轉swapcase()
s3 = s.swapcase()
4.隔開的單詞首字母大寫(以空格或特殊字符,數字隔開即可) title()
s = alex egon wusir
s4 = s.title()
5.居中,添加總寬度,填充物; center()
s = 'alexWUsir'
s5 = s.center(20,' ')
6.8位一隔開,沒滿的補充,expandtabs()
s = 'alex\tsir'
s6 = s.expandtabs()
#公共方法
len() ---求長度
7.判斷字符串以什么為開頭startwith(), 鏡像方法endwith(),返回True/False
s = 'alexWUsir'
s7 = s.startwith('alex') #True
s71 = s.startwith('e',2,5)
8.通過元素查找索引,找不到返回-1 find()
s = 'alexWUsir'
s8 = s.find('W') 返回索引:4 多個元素,以第一個元素索引為准
s8 = s.index('A')
9.通過元素查找索引,找不到報錯 index()
10.默認刪除字符串前后空格,strip()
不止是空格,可修改默認值。 %*
變種:rstrip(),lstrip() 刪除左側右側元素
11.統計,count()
s = 'alexWUsir'
s9 = s.count('al') # 1
12.拆分,分割,split() 成列表 字符串轉列表
s = 'alex WUsir taibai'
l = s.split() #默認空格 分割成列表
s = 'alex:WUsir:taibai'
l = s.split(':')
分割符會消失(空格,:,其他你選擇的分割符)
13.格式化輸出,format() 三種玩法
s = '我叫{},今年{},愛好{},再說一下我叫{}'.format('john','18','ball','john') #一一對應
s = '我叫{0},今年{1},愛好{2},再說一下我叫{0}'.format('john','18','ball') #索引對應
s = '我叫{name},今年{age},愛好{hobby},再說一下我叫{name}'.format(age=18,name='john',hobby='ball') #鍵值對
14.替換--replace() old new count
s = "來看街坊另見發揮街坊奶記得"
s1 =s.replace("街坊","老王") 默認全部替換
15.is系列
name='taibai123'
print(name.isalnum()) #字符串由字母或數字組成
print(name.isalpha()) #字符串只由字母組成
print(name.isdecimal()) #字符串只由十進制組成
三、for循環
有限循環,可迭代對象
s = 'sdasfsfr'
for i in s:
print(i)
