Python列表及元組操作及練習
阿新 • • 發佈:2019-01-28
列表操作: 增: append,insert,extend(可迭代的去新增) 刪: 按元素去刪除:remove 按索引去刪:pop去除(有返回值), del刪除(徹底刪除),clear清空列表 改: 按索引去改(直接指定值進行修改);按切片去改(可迭代的去修改,添加個數不定) 查: for迴圈,按索引來查;按切片來查 可迭代: 如果是字串,則每個拆分為最小的單元;如果是列表,則每個拆分為列表中的一個元素 公共方法: 1.得出長度->len(x)得出列表的長度;x.count(num) 2.找索引->x.index(num)找出num值在列表中的索引 排序: 正序排序->li.sort() 倒序排序->li.sort(reverse=True) 反轉->li.reverse() 列表的巢狀: capitalize()方法可以將第一個字母變大寫,其餘字母變小寫 元組:可以被查詢,不可被修改 只讀列表,可迴圈查詢,可切片 兒子不能改,孫子可能可以改 tu = (1,2,'aaa',[3,4,5,'www']) join方法,可迭代物件 s.join(xx) 用s相連線(s在其後面進行連線) join返回的是一個字串 可以用join實現無縫拼接 字串轉換為列表,使用split方法 列表轉換為字串,使用join方法 range 方法的使用: for i in range(10,0,-1): for i in range(0,10,-1): (不會報錯,什麼都沒有) isinstance() 函式來判斷一個物件是否是一個已知的型別 迴圈巢狀列表的遍歷: li = [1,2,3,4,'aaa',[2,3,5]] for i in li: if isinstance(i,list): #檢視list元素是否是list for j in i: #遍歷巢狀的list print (j) else : print (i)
練習題:
lis = [2,3,'k',['qwe',20,['k',['tt',3,'1']],89],'ab','adv'] 1)將列表lis中的’tt’變成大寫(用兩種方式):
lis[3][2][1][0] = "TT"
print(lis)
lis[3][2][1][0] = lis[3][2][1][0].upper()
print(lis2)
2)將列表中的數字3變成字串’100’(用兩種方式):
lis.remove(3)
lis.insert(1,'100')
print(lis)
3)將列表中的字串’1’變成數字101(用兩種方式)
lis[3][2][1][2] = 101 print(lis) lis[3][2][1][2] = int(lis[3][2][1][2].replace('1','101')) print(lis) print(lis[3][2][1][2]) # '1' lis[3][2][1][2] = int('10'+lis[3][2][1][2]) lis[3][2][1][2] = int(lis[3][2][1][2]) + 100 li = [1,2,3] li[2] = 33 print(li)
4)查詢列表li中的元素,移除每個元素的空格,
並找出以’A’或者’a’開頭,並以’c’結尾的所有元素,
並新增到一個新列表中,最後迴圈列印這個新列表。
li = ['taibai ','alexC','AbC ','egon',' Ritian',' Wusir',' aqc'] b=[] for i in li: s=i.strip() if (s.startswith("A")or s.startswith("a"))and s.endswith("c"): b.append(s) for x in b: print(x) for i in li: s=i.strip() if s[0].upper() == 'A' and s[-1] == 'c': b.append(s) for x in b: print(x)
5)開發敏感詞語過濾程式,提示使用者輸入評論內容,如果使用者輸入的內容中包含特殊的字元:敏感詞列表 li = ["蒼老師","東京熱",”武藤蘭”,”波多野結衣”],則將使用者輸入的內容中的敏感詞彙替換成***,並新增到一個列表中;如果使用者輸入的內容沒有敏感詞彙,則直接新增到上述的列表中。
li=["蒼老師","東京熱","武藤蘭","波多野結衣"]
new_li= []
info = input("評論") # 蒼老師,東京熱 法律框架第三
for i in li:
if i in info:
l = len(i)
info=info.replace(i,'*'*l)
new_li.append(info)
print(new_li)