1、字符串,是不可變數據類型,全部字符串的方法都不會修改字符串的值,使用字符串的方法後都是生成了一個新的字符串。就由於字符串是不可變變量!git
字符串的方法數據庫
一、 strip(),默認去空格,可是當()中有某個字符串的話,意思就是去掉前面字符串中的某個字符串數組
例如:字符串名字xx.strip()app
print('lalahi zhangyizhoulala'.strip('lala'))
可是要注意這個方法只是去掉字符串兩頭的指定東西,若是字符串中間有指定的lala時則不會生效
二、None,表明空,什麼都沒有,但不是空字符串spa
三、in,表明xx在A裏orm
例如:對象
name = 'chuandan beizhao sijiantao'排序
print('sijiantao' in name)索引
返回結果是布爾值t或fip
四、is,判斷是不是同一塊內存地址
例如:
a1 = ['a','b','c']
a2 = ['a','b','c']
print(id(a1))
print(id(a2))
print(a1 is a2)
返回結果是布爾值t或f
五、 字符串的下標
經過字符串的下標取其第幾位的值
如:
print(name[3])
六、是否以x結尾,例如
name = 'hello zhangyizhou'
print(name.endswith('h'))
返回false
7,find()查找字符串的索引,例如
name = 'hi zhangyizhou'
print(name.find('y',2,10))
返回位置的數字,若是返回-1表明沒找到
2和10表明開始查找的位置和結束的位置,能夠都不寫,也能夠只寫開始的位置
八、isdigit()字符串是不是數字,例如
name = 'hi zhangyizhou'
print(name.isdigit())
返回布爾值
九、將字符串中變成大/小寫,變成大寫upper(),變成小寫lower(),例如
name = 'hi zhangyiZHou'
print(name.lower()) 變成小寫
print(name.upper()) 變成大寫
十、join()拼接字符串,join後面必須是可迭代的對象,好比字符串或者列表之類的,例如
name = ['hi','zhangyiZHou']
print('用這個鏈接'.join(name))
join前面想寫啥寫啥,意思是用‘用這個鏈接’這幾個字將前面的東西和name裏的東西拼成一個字符串,也能夠寫星號之類的。若是以上例子當中name的類型是字符串的話,運行的結果是鏈接符+hi,鏈接符+zhangyizhou
十一、替換字符串replace()
例如:print('zhangyizhou is mm,zhangyizhou is nvde,zhangyizhou loveu'.replace('zhangyizhou','tihuandiao')),3個zhangyizhou都被替換成tihuandiao了
在要替換的字符串後面也能夠加數字,表明着要替換幾回
例如:
print('zhangyizhou is mm,zhangyizhou is nvde,zhangyizhou loveu'.replace('zhangyizhou','tihuandiao',1)),只替換第一個zhangyizhou
十二、分割字符串,分割後返回一個列表,例如
char = 'zyz&yiso&zhrrt&namr2'
print(char.split('&'))
將char以&這個符號分割成一個新的列表
字符串必須會的方法
大小寫字母+數字,隨機生成驗證碼
Find,查找字符串
Format() 格式化字符串
Isalnum() 是否包含數字和字母
Isdigit() 是不是數字
Lower() 變成小寫字母
Upper()變成大寫字母
Join() 拼接字符串
Strip() 去空格,istrip() rstrip()去左邊空格和去右邊空格
Replace()替換字符串中的指定字符串
Split()分隔字符串
2、列表
一、列表中增長元素
方法append,insert
append是在列表的末尾增長
insert是在指定位置增長
例如:
name = ['name1','name2','name3']
name.append('zhangyihzou')
print(name)
name.insert(1,'yiso')
print(name)
二、列表的刪除
方法pop(),不指定元素的時候刪除列表最後一個元素,且該方法可以返回被刪除的值
例如:
name = ['name1','name2','name3']
name.insert(1,'yiso')
name.pop()
print(name)
返回經過pop刪除的值
例如:
name = ['name1','name2','name3']
name.insert(1,'yiso')
name.pop()
print(name)
print('pop刪的是:',name.pop())
方法pop(n),指定元素的x下標刪除列表中指定位置的元素
例如:
name = ['name1','name2','name3']
name.insert(1,'yiso')
name.pop(1)
print(name)
方法clear(),清空列表
例如:
name = ['name1','name2','name3']
print('before的值:',name)
name.clear()
print('after的值:',name)
方法del[n],指定元素的x下標刪除列表中指定位置的元素,且指定的下標必須存在,也能夠用del方法刪除整個列表,如del name
例如:
name = ['name1','name2','name3']
del name[1]
print(name)
方法remove(),刪除列表中某個值,括號中必須寫要刪除元素的值,而不是下標,不會返回刪除的值
例如:
name = ['name1','name2','name3']
name.remove ('name1')
print(name)
三、列表中修改元素
name[n] = xxx,爲修改列表中某元素的值。也能夠直接給列表從新負值,即 name = ['值1',‘值2’,‘...’]
例如:
name = ['name1','name2','name3']
name[2] = 'lalala'
print(name)
注意:若是找不到列表中的下標,對其進行修改值,會報錯
例如:
name = ['name1','name2','name3']
name[9] = 'lalala'
print(name)
四、列表的查詢
A in B,in方法
例如:
list = [1,2,3,'zhangyizhou']
print('zhangyizhou' in list)
列表名[-1],-1是取列表中最後一個元素。同理,-2表明倒數第二個元素,-3表明第三個元素
例如:
list = [1,2,3,'zhangyizhou']
print(list[-1])
index(元素值)方法,意思是查詢某個元素的下標,若是這個值在列表中不存在,報錯
例如:
list = [1,2,3,'zhangyizhou']
print(list.index(1))
index方法中也能夠從指定位置開始找,index(元素值,m,n) m表明查找的開始位置,n表明查找的結束位置,結束的位置能夠不寫,意思就是查找到列表最後
例如:
list = [1,2,3,'zhangyizhou']
print(list.index('zhangyizhou',3,3))
五、列表的運算
+
list a +list b,意思是列表a元素和b元素相加後組成一個新的列表,新列表中的元素順序按照a和b的順序顯示。但a和b中的值沒有變化
例如:
list1 = ['zhangyizhou','yiso',1,33,600]
list2 = [25,68,'mengmengzhou','hahaha12']
print(list1 + list2)
a.extend(b),意思是把b的值擴展到a中,b的值不變,可是a的值是a+b後的值,順序是a+b。
例如:
list1 = ['zhangyizhou','yiso',1,33,600]
list2 = [25,68,'mengmengzhou','hahaha12']
list1.extend(list2)
print(list1)
a.append(b),意思是把b這個總體加在a的末尾,注意這時結果會是一個二維數組,由於b在結果中是一個總體
例如:
a = ['a',3,'zhangyizhou',68]
b = [1,2,5,7]
print(a)
print(b)
六、列表的排序,默認是升序排序
sort()方法,將列表中的元素升序排序, 須要注意的是,用到排序方法,列表中的值必須是同一種類型的數據
例如:
list = [1,34,5,94,45,555,976]
list.sort()
print(list)
sort(reverse = True)方法,將列表中的元素降序排序
例如:
list = [1,34,5,94,45,555,976]
list.sort(reverse = True)
print(list)
3、切片,對字符串和字典都可操做
切片:從列表和字符串裏取幾個元素
List[m:n],意思是取第m位到第n位的元素
例如:
list = ['zhangyizhou','yiso','youxin']
print(list[1:3])
注意,若是從第一位開始取的話冒號前能夠不寫,渠道最後的話冒號後能夠不寫,若是都不寫只寫冒號的話就是從頭取到尾
字符串的寫法同上,注意取值都是顧頭不顧尾
4、步長
步長:從列表和字符串裏隔幾個取一個元素
例如:
num = list(range(1,21))
print(num[0:11:3])
意思是從第0個到第11個隔3個元素取一次值
以上輸出的是:[1, 4, 7, 10]
若是步長爲負數的話,意思是從最後一個往前取值,至關於倒序排序
例如:
num = list(range(1,21))
print(num[::-1])
以上輸出的是:[20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
若是步長是-2的話意思是從末尾開始取,隔兩個取一次
5、元組
元祖:不可變的列表list。更多時候用在操做數據庫讀數據庫時使用。
元組用小括號定義,如tuple()
元組只有兩個方法,count()和index()。統計元組中重複元素出現的次數,和索引讀下標
例如:
tuple = (0,1,2,3,2,5,6,7,8,2,2)
print(tuple)
print(tuple.count(2))
統計2在tuple中出現的次數
例如:
tuple = (0,1,2,3,2,4,6,7,8,2,2)
print(tuple.index(4))
以上例子是返回元組中數值是4的元素的下標
6、字典
字典:用大括號{}表示。Key value的形式在大括號裏。可是key在字典裏不能重複的,是惟一的。
一、字典取值的方法,經過key取值
例如:
zidian = {
'name':'zhangyizhou',
'sex':'man',
'age':'17',
'grade':'one'
}
print(zidian['grade'])
另外一種取值的方法get()
例如:
zidian = {
'name':'zhangyizhou',
'sex':'man',
'age':'17',
'grade':'one'
}
print(zidian.get('sex'))
以上兩個方法的區別是get獲取不到Key的時候不會報錯返回是none
print(zidian.get('haha','沒找到你要的'))
以上例子中沒找到你要的這個參數,表明是當get不到Key時返回的東西,若是不寫該參數的話返回none
二、字典增長的方法
用中括號
例如
zidian = {
'name':'zhangyizhou',
'sex':'man',
'age':'17',
'grade':'one'
}
zidian['addr'] = '朝陽區青年路'
另外一種增長的方法setdefault(‘key’,’值’)
例如:
zidian = {
'name':'zhangyizhou',
'sex':'man',
'age':'17',
'grade':'one'
}
zidian.setdefault('addr','甜水園麥當勞')
print(zidian
)
三、字典修改的方法:
用中括號
同新增的中括號:zidian['like'] = 'music'
四、字典刪除的方法
del(key)
例如:del zidian[‘addr’]
pop(),字典是無序的,因此Pop方法必須傳一個指定的key,並且指定刪除的這個key必須存在,不然報錯
例如:pop(‘sex’)
Clear(),直接清空字典
例如:
zidian.clear()
Popitem(),意思是隨機刪除一個元素
例如:zidian.popiten()
以上返回的是:{}
五、字典的內置方法:
all.keys() 返回字典的全部key 例如:print(all.keys(zidian))
all.values()返回字典全部的value 例如:print(all.values(zidian))
all.items() 返回字典全部的key 和value,循環字典的時候用
六、字典的合併,將兩個字典合併在一塊兒
例如:
zidian1 = { 'name':'zhangyizhou', 'sex':'man', 'age':'17', 'grade':'one'}zidian2 = { 'xing':'yiso', 'nianji':'san', 'pohone':'13311221345',}zidian1.update(zidian2)print(zidian1)注意,若是要合併的兩個字典中有相同的key,那麼該方法執行後會更新key的value七、判斷是否在字典中存在的方法,in例如:name in zidian1返回的是布爾值