List基本用法:
#list 是用“[]”定義 用“,”隔開
例子:
#stu_name='海龍','楊帆','劉榮心','......'
#定義一個名為stu_name的list
stu_name= ['海龍','楊帆','劉榮心','......']# print(stu_name[0])#查詢list中第一個元素 #輸出結果:海龍
list-增刪改查-增:
stu_name= ['海龍','楊帆','劉榮心','......'] stu_name.append('小月月')#在list的末尾添加一個元素 print(stu_name) #輸出結果:['海龍', '楊帆', '劉榮心', '......', '小月月']
stu_name= ['海龍','楊帆','劉榮心','......'] stu_name.insert(0,'小甜心')#在指定位置(下標)添加一個元素 stu_name.insert(0,'小甜心')#第二次執行如果位置是相同的,上次增加的元素位置后移 print(stu_name) #輸出結果:['小甜心', '小甜心', '海龍', '楊帆', '劉榮心', '......']
list-增刪改查-改(只有一種修改的方法):
stu_name= ['海龍','楊帆','劉榮心','......']#下標為0、1、2、3 stu_name[2]='小紅'#修改下標2的元素,將劉榮心,修改為小紅。 print(stu_name) #輸出結果:['海龍', '楊帆', '小紅', '......']
list-增刪改查--刪:
#.pop方法:傳下標刪除元素(用法比較單一,只能刪除list的元素) stu_name= ['海龍','楊帆','劉榮心','......'] stu_name.pop()#刪除最后一個元素,如果不輸入下標值,默認刪除最后一個元素。 stu_name.pop(1)#指定角標,刪除指定的元素。指定下標1的內容,刪除’楊帆‘;填-1是刪除最后一個下標的內容。如從后向前刪的話可以用“-” print(stu_name) #輸出結果:['海龍', '劉榮心']
#.remove方法:傳元素刪元素 stu_name= ['海龍','楊帆','劉榮心','......'] stu_name.remove('劉榮心')#----如果有重名的,只能刪除查到到的第一個元素,且remove不能同時刪除多個元素 print(stu_name) #輸出結果:['海龍', '楊帆', '......']
#del方法:通過下標刪元素(del刪除面向對象比較多,如函數、字典等) stu_name= ['海龍','楊帆','劉榮心','......'] del stu_name[2] #刪除下標2內的元素“劉榮心” print(stu_name)
#輸出結果:['海龍','楊帆','......']
List增刪改查-查:
stu_name= ['海龍','海龍','楊帆','劉榮心','小芳'] print(stu_name[-1])#通過角標查詢list里的元素,最后一位 #輸出結果:小芳 print(stu_name[0])#通過角標查詢list里的元素,第一位 #輸出結果:海龍 print(stu_name.count('海龍'))#查詢同一個元素在list出現的次數 #輸出結果:2
print(len(stu_name))#查詢stu_name的長度
#輸出結果:5 print(stu_name.index("劉榮心"))#查找元素的角標 #輸出結果:3 print(stu_name.reverse())#reverses是反轉list,正序變成倒敘,但不輸出結果 print(stu_name) #輸出結果:['小芳', '劉榮心', '楊帆', '海龍', '海龍'] stu_name.clear()#clear清空list元素 print(stu_name) #輸出結果:[]
List排序:
stu_name=['海龍','海龍','楊帆','劉榮心','小芳'] stu_num=[2,3,6,1,4,5,6,7,8,0] stu_num.sort()#按照正序排列元素,如果list內存在str和int類型的組合,無法進行排序。 print(stu_num) #輸出結果:[0, 1, 2, 3, 4, 5, 6, 6, 7, 8] stu_num.sort(reverse=True)#加reverse=True,就是倒敘排列,注意true,T一定要大寫。 print(stu_num) #輸出結果:[8, 7, 6, 6, 5, 4, 3, 2, 1, 0]
List關聯合並:
#List關聯合並 stu_name=['海龍','海龍','楊帆','劉榮心','小芳'] stu_num=[2,3,6,1,4,5,6,7,8,0] new_lis=stu_name+stu_num#可以合並list,但是生成了一個新的list print(new_lis) #輸出結果:['海龍', '海龍', '楊帆', '劉榮心', '小芳', 8, 7, 6, 6, 5, 4, 3, 2, 1, 0] stu_name.extend(stu_num)#關聯多個list,可以吧把其他的list下的元素加入到當前的list下 print(stu_name) #輸出結果:['海龍', '海龍', '楊帆', '劉榮心', '小芳', 8, 7, 6, 6, 5, 4, 3, 2, 1, 0] print(stu_name*2) #輸出的list元素,可以進行+-*/ #輸出結果:['海龍', '海龍', '楊帆', '劉榮心', '小芳', 2, 3, 6, 1, 4, 5, 6, 7, 8, 0, '海龍', '海龍', '楊帆', '劉榮心', '小芳', 2, 3, 6, 1, 4, 5, 6, 7, 8, 0]
List循環:
passwd=['111111','222222','333333'] for s in passwd:#for循環,直接循環list,循環的時候每次都取list里的元 print('每次循環的值:',s) #輸出結果:每次循環的值:111111 \n 每次循環的值:222222 \n 每次循環的值:333333
List賦值:
passwd=['111111','222222','333333'] ix=0 for s in passwd: passwd[ix]='abc_'+s #輸出時每次都在前面賦值abc_ ix+=1#每次下標都加1 print(passwd) #輸出結果:['abc_111111', 'abc_222222', 'abc_333333']
List多維數組:
nums=[1,2,3,4,5,6,['a','b','c','d',['一','二']]]#存在幾個[]的組合就是幾維數組,本次演示的nums是三維數組 print(nums[6][4][1]) #輸出結果:二
#list基本應用,查詢手機換號是否存在。 iphone = ['151', '138', '159'] for counter in range(5): ip = input("手機號碼:") if ip in iphone: print("手機號已存在") continue else: print("手機號未注冊") continue
List切片操作:
# # #就是list取值的一種方式 L =list(range(1,11))#list是1~10,顧頭不顧尾的,不會取尾的數字,如果要去對應的值要+1 print (L) #輸出結果:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print(L[2:8])#取下標是2`8的 #輸出結果:[3, 4, 5, 6, 7, 8] print(L[:5])#也可以用[0:5]取值,如果最前面沒寫的話 代表是從下標0開始取得 #輸出結果:[1, 2, 3, 4, 5] print(L[4:])#也可以用[4:10]取值,如果最后沒寫的話 代表是從4取到最后 #輸出結果:[5, 6, 7, 8, 9, 10] print(L[:])#如果冒號前后都沒有的話,就是全取 #輸出結果:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print(L[::2])#取角標范圍為0~10,且隔2個取一次。但是這個數包含自己。 #輸出結果:[1, 3, 5, 7, 9] print (L[1::2])#取角標范圍為1~10,隔2個取一次,取偶數 #輸出結果:[2, 4, 6, 8, 10] print(L[::2] )#取角標范圍為0~10,隔2個取一次,取奇數 #輸出結果:[1, 3, 5, 7, 9] print(L[::-2])#取奇數從后往前取,如果是最后步上是正數,就從前往后取,如果最后面的步長是負數的,那么久從右往左取 #輸出結果:[10, 8, 6, 4, 2] #-----------切換同樣適用於字符串---------- words='中秋節還要上課' for c,b in enumerate (words):#C屬於一個元組類型,B屬於一個str類型。 print('每次打印的',c,b) #輸出結果:每次打印的 0 中\n每次打印的 1 秋\n每次打印的 2 節...每次打印的 6 課 print(words[::-1])##字符串反轉 #輸出結果:課上要還節秋中
回文例子:
s='上海自來水來自海上'#回文算法,翻過來倒過去都一樣 s =input('請輸入一個字符串:') if len(s)<2:#一個回文字符串肯定是大於等於2的。 print('字符串長高度必須大於1') elif s==s[::-1]:#正文和回文輸出內容相同的 print('是回文') else: print('不是回文')
元組基本用法:
mysql=('12123412','36','root')#用[]就是list 用()就是元組,元組也是一個列表,元組不能修改 print(mysql[0:2])#輸出元組0,1的元素 for m in mysql: print(m) #輸出結果:12123412 \n 36 \n root l =[1] t =('abc',)#定義元組的時候如果僅有一個元素的時候需要在后“,”才變成元組類型 print(type(t)) #輸出結果:<class 'tuple'>#元組 print(type(l)) # #輸出結果:<class 'list'>#list