最近公司要求用python寫(xiě)后端,但是人很難找,最后找了個(gè)技術(shù)不太行的實(shí)習(xí)生來(lái)叫他試試看,他把用戶信息封裝在token里面然后叫我自己解密用戶數(shù)據(jù),我就覺(jué)得不靠譜了,還理直氣壯的說(shuō)自己以前都是這樣干的,所以我決定自己學(xué)習(xí)轉(zhuǎn)戰(zhàn)后端,后面會(huì)出一些關(guān)于python和后端的技術(shù)分享,作為一個(gè)剛?cè)腴T(mén)的菜鳥(niǎo),就邊學(xué)邊寫(xiě)博客記錄一下,也希望簡(jiǎn)友里面的大佬能夠多多指導(dǎo)一下。
Python里面的列表和Java中的List大同小異了,但是也還是有些不同的地方,這邊文章主要簡(jiǎn)單記錄一下,就不細(xì)細(xì)帶大家去看源碼了,這種東西都是基礎(chǔ),會(huì)用就夠了
定義列表
nameList = ['zzp', 'zy', 'ls']
遍歷列表的幾種方式
1、直接遍歷
nameList = ['zzp', 'zy', 'ls']
for name in nameList:
print(name)
2、帶下標(biāo)遍歷
nameList = ['zzp', 'zy', 'ls']
for index in range(len(nameList)):
print(nameList[index])
列表添加數(shù)據(jù)的幾種方式
1、append
此方法用于在list末尾添加數(shù)據(jù),關(guān)鍵點(diǎn)在于如果添加的數(shù)據(jù)是一個(gè)序列,它會(huì)把整個(gè)序列添加到列表的末尾。
先看普通添加:
nameList = ['zzp', 'zy', 'ls']
nameList.append("Tom")
print(nameList)

下面是添加序列的情況:
nameList = ['zzp', 'zy', 'ls']
nameList.append(["Tom","Jeos","Hint"])
print(nameList)

會(huì)發(fā)現(xiàn)添加一個(gè)列表進(jìn)去它會(huì)把整個(gè)列表作為一個(gè)列表添加進(jìn)去,而不是將所添加列表的數(shù)據(jù)逐一添加。
2、extend
使用extend向列表添加數(shù)據(jù),如果這個(gè)數(shù)據(jù)是一個(gè)序列,它會(huì)將序列元素逐一添加到
nameList = ['zzp', 'zy', 'ls']
nameList.extend(["Tom","Jeos","Hint"])
print(nameList)
nameList.extend("Hint")
print(nameList)

值得注意的是String字符串也是序列,所以添加字符串也會(huì)被拆開(kāi)。
3、insert
向指定下表位置插入數(shù)據(jù)
nameList = ['zzp', 'zy', 'ls']
nameList.insert(1,"Tom")
print(nameList)

如果沒(méi)有指定下標(biāo),則插入在列表的頭部
列表刪除數(shù)據(jù)的幾種方式
1、del
這個(gè)函數(shù)的作用就是刪除列表
nameList = ['zzp', 'zy', 'ls']
del(nameList)
print(nameList)

可以看到控制臺(tái)報(bào)錯(cuò)信息,列表nameList沒(méi)有被聲明,證明整個(gè)列表都被刪除了。
他除了刪除整個(gè)列表,也可以刪除指定下標(biāo)元素,比如
nameList = ['zzp', 'zy', 'ls']
del(nameList[0])
print(nameList)

2、pop
刪除指定下標(biāo)元素,如果不指定下標(biāo),則默認(rèn)刪除列表最后一個(gè)元素,無(wú)論指定下標(biāo)或者不指定下標(biāo),它都會(huì)返回被刪除的元素。
nameList = ['zzp', 'zy', 'ls']
del_name=nameList.pop()
print(nameList)
print(f"被刪除的元素是{del_name}")

帶下標(biāo)刪除返回
nameList = ['zzp', 'zy', 'ls']
del_name=nameList.pop(1)
print(nameList)
print(f"被刪除的元素是{del_name}")

3、remove
刪除列表中的指定元素,比如我需要?jiǎng)h除nameList中的zzp
nameList = ['zzp', 'zy', 'ls']
nameList.remove('zzp')
print(nameList)

4、clear
清空列表
nameList = ['zzp', 'zy', 'ls']
nameList.clear()
print(nameList)

修改列表數(shù)據(jù)的幾種方式
1、修改指定下標(biāo)數(shù)據(jù)
nameList = ['zzp', 'zy', 'ls']
nameList[0]='aaa'
print(nameList)

2、reverse
就是將列表全部反過(guò)來(lái),逆置
nameList = ['zzp', 'zy', 'ls']
nameList.reverse()
print(nameList)

3、sort
將列表元素排序
nameList = [1,3,4,2,8,0]
nameList.sort()
print(nameList)

擴(kuò)展知識(shí) 元組
元組也是用于存放多個(gè)數(shù)據(jù),與列表不同的是元組中存放的元素不可以被修改,定義方式使用“()”包裹
值得注意的是定義元組時(shí),當(dāng)元組中只有一個(gè)數(shù)據(jù)的時(shí)候也需要在后面加上“,”,否則數(shù)據(jù)類(lèi)型就不是元組
比如
nameList = (1,)
print(type(nameList))
nameList1=(1)
print(type(nameList1))
結(jié)果:

可以看到,第一個(gè)數(shù)據(jù)類(lèi)型是元組,第二個(gè)數(shù)據(jù)類(lèi)型是int。