3.2字符串常見操作
3.2.1字符串查找
(1)index()
如果有這個子串,返回第一個字符的下標;如果沒有這個子串,報錯
(2)find()
和index基本相同;如果沒有這個子串不報錯,返回-1
(3)count()
查找當前子串出現的次數
3.2.2字符串檢查和判斷
(1)isdigit()
判斷字符串是否是純數字組成,如果是返回True,否則返回False
(2)isalpha()
判斷字符串是否是純字母組成,如果是返回True,否則返回False
(3)isalnum()
判斷字符串是否是純數字或字母組成,如果是返回True,否則返回False
(4)startswith()
判斷字符串是否是某個子串開始,如果是返回True,否則返回False
(5)endswith()
判斷字符串是否是某個子串結尾,如果是返回True,否則返回False
(6)isspace()
判斷字符串是否都是由空格組成,如果是返回True,否則返回False
(7)isupper()和islower()
判斷字符串是否是由大寫字母或者是否是由小寫字母構成
3.2.3字符串修改
知識補充:
可變數據類型:通過程序改變數據的時候,如果可以改變原有的變量所存儲的數據
列表,字典,集合
不可變數據類型:通過程序改變數據的時候,如果不能改變原有的變量所存儲的數據
字符串,元組,整型,浮點型
(1)replace()☆☆☆
語法:replace(舊的子串,新的子串,替換的次數)
注意:次數不能超過這個子串出現的個數,否則沒有意義
(2)strip()☆☆☆
去掉首尾的空格
(3)split()☆☆☆
語法:字符串名.split(分割符號)
將字符串分割成列表
(4)upper()和lower()☆☆☆
大寫和小寫
(5)title()
單詞首字母大寫
(6)capitalize()
字符串首字母大寫
(7)swapcase()
大小寫互轉
3.3列表常見操作
3.3.1創建列表
(1)手動創建
(2)range()
語法:range(開始數值,結束數值,步長)
在python3中生成一個等差數列range( );不包含結束
在python2中直接輸出一個列表
3.3.2列表增加數據
(1)取數據
下標法或者切片法
如:
list1 = ['daqiu', 10, 'erqiu', 20]
print(list1[0])
print(list1[0:2])
for i in list1:
print(i)
(2)增加數據
①insert()
語法:insert(添加數據的位置下標,要添加的數據)
可以在指定位置添加數據
②append()
可以在結尾添加數據,添加的數據可以是一個,也可以是一個列表
③extend()
可以在結尾添加數據,會拆開添加的數據,常當追加的數據是列表的時候用extend()
(3)查找數據
①in,not in
in(存在),如果存在那麼結果爲true,否則爲false
not in(不存在),如果不存在那麼結果爲true,否則false
②index和count
與在字符串中的用法相同
(4)修改數據
直接通過下標來修改
(5)刪除數據
①remove()
語法:remove(要刪除的數據)
刪除指定數據
注意:當需要邊遍歷邊刪除時,需要用切片進行刪除
如下:
for i in range(len(list1)-1, -1, -1):
list1.remove(list1[i])
for i in list1[:]: # ['b','c','d','e']
list1.remove(i)#在刪除的過程中列表未進行及時更新
print(list1)
②pop()
刪除數據,如果寫參數是下標,就刪除指定下標的數據;如果不寫參數,就默認刪除結尾數據。並且會有一個返回值,返回的是被刪除的數據
③clear()
清空列表,會得到一個空列表,返回None
④del()和del
語法:del(列表名稱)/del 列表名稱,也可通過下標刪除指定數據
(6)拷貝
①淺拷貝:賦值型拷貝
②copy()
語法:列表名稱.copy()
(7)列表排序
①sort()
sort方法是將列表按特定順序重新排列,默認爲由小到大,參數reverse=True可改爲倒序,由大到小。默認的是reverse=False。返回值是None
②sorted()
不會改變原有的列表,返回一個新的列表
(8) reverse()
將列表倒序(逆置)