day7-列表

列表.png

1.什么是列表(list)

列表是容器型數(shù)據(jù)類型,可變(支持元素的增刪改)魄梯,有序(支持下標操作)
將[]作為容器的標志,里面的元素用逗號隔開

2.列表中的元素

1)認識類型的數(shù)據(jù)都可以作為列表的元素竞思, 例如: 數(shù)字搞坝、字符串、列表干旁、字典驶沼、元祖、函數(shù)争群、自定義類型等
2)同一個列表中的不同元素的類型可以不一樣

3.查 - 獲取列表中的元素

1)獲取單個元素: 列表[下標]

name_list = ['vivi', '1', '劉','陳', '鄧']
print(name_list[1])

2)獲取部分元素(切片):列表[開始下標:結束下標:步長]
列表切片和字符串切片語法一樣回怜,但是字符串切片的結果數(shù)字符串,列表切片的結果是列表

name_list = ['vivi', '1', '劉','陳', '鄧']
print(name_list[:])
print(name_list[::-1])

3)遍歷
for 變量 in 列表:
循環(huán)體

變量直接取列表中每個元素

name_list = ['vivi', '1', '劉','陳', '鄧']
for item in name_list:
    print(item)
for item in name_list[::-1]:
    print(item)

通過遍歷下標取遍歷列表

name_list = ['vivi', '1', '劉','陳', '鄧']
for index in range(len(name_list)):
    print(index, name_list[index])

for index in range(-1, -len(name_list)-1, -1):
    print(index, name_list[index])

1.增(在列表中添加元素)

1)列表.append(元素) - 在列表的最后添加一個元素

film_list = ['一出好戲','無間道', '流浪地球']
film_list.append('復仇者聯(lián)盟')
print(film_list)

2)列表.insert(下標换薄,元素) - 在列表指定的下標前插入指定元素

film_list = ['一出好戲','無間道', '流浪地球']
film_list.insert(1, '肖申克')
print(film_list)

2.刪(刪除列表中的元素)

1)del 列表[下標] - 刪除列表中指定下標對應的元素

film_list = ['一出好戲','無間道', '流浪地球']
del film_list[0]
print(film_list )

2)列表.remove(元素) - 刪除中第一個指定元素(可能存在重復元素玉雾,只刪第一個)
注意:被刪除的元素如果不存在會報錯

age_list = [1, 4, 5, 4]
age_list.remove(4)
print(age_list)

3)
列表.pop() - 取出列表中最后一個元素翔试,返回被取出的數(shù)據(jù)
列表.pop(下標) - 取出列表中下標指定元素,返回被取出的數(shù)據(jù)

3,改(修改列表中某個元素的值)

列表[下標] = 新值 - 將列表中指定下標對應元素改為新值

age_list = [1, 4, 5, 4]
age_list[0] = 2
print(age_list)

練習:刪除低于60分的

scores = [89, 59, 43, 100, 98, 30, 70, 45, 57, 88]
new_scores = []
for num in scores:
    if num > 60:
        new_scores.append(num)
print(new_scores)
scores = [89, 59, 43, 100, 98, 30, 70, 45, 57, 88]
index = 0
while index < len(scores):
    if scores[index] < 60:
        del scores[index]
        continue
    index += 1
print(scores)
scores = [89, 59, 43, 100, 98, 30, 70, 45, 57, 88]
temp = scores[:]
for score in temp:
    if score < 60:
        scores.remove(score)
print(scores)

1.數(shù)學運算:+抹凳,*

1)列表1+列表2 - 將兩個列表中的元素合并產(chǎn)生一個新的列表

list1 =[1, 2, 3]
list2 = ['a', 'b', 'c']
print(list1 + list2)      #[1, 2, 3, 'a', 'b', 'c']

2)列表N* - 將列表中的元素重復N次產(chǎn)生一個新的列表

list1 =[1, 2, 3]
print(list1*3)      #  [1, 2, 3, 1, 2, 3, 1, 2, 3]

2.比較運算 ==遏餐,!=

list1 =[1, 2, 3]
print(list1 == [1, 2, 3])
print([3, 2, 1] > [1, 2, 3])

3.in 和 not in

元素 in 列表 - 判斷列表中是否存在指定的元素

name_list = ['路飛', '柯南', '鳴人']
print('路飛' in name_list)

4.len(序列)

5.list(數(shù)據(jù)) - 將數(shù)據(jù)轉換成列表

1)所有的序列都可以轉換成列表
2)將序列的元素作為列表元素

list3 = list('he llo ')
print(list3)

list4 = list(range(5))
print(list4)

1.內(nèi)置函數(shù)

max(序列) min(序列) sum(序列)
max,min - 序列中元素的類型必須一樣赢底;序列中的元素必須支持比較運算符
sum - 只支持數(shù)字序列求和

scores = [11, 45, 64, 35, 73, 56, 100]
print(max(scores))
print(min(scores))
print(sum(scores))

2.列表相關的方法

1)列表.count(元素) - 統(tǒng)計類別中指定元素的個數(shù)

scores = [11, 45, 64, 100, 35, 73, 56, 100]
print(scores.count(100))

2)列表.extend(序列) - 將序列中的元素依次添加到列表的最后

scores.extend('abc')
print(scores)

3)列表.index(元素) - 獲取列表中指定元素對應的的下標(只獲取第一個)
注意:如果元素不存在失都,會報錯

scores = [11, 45, 64, 100, 35, 73, 56, 100]
print(scores.index(100))

4)列表.reverse() -列表倒序

scores = [11, 45, 64, 100, 35, 73, 56, 100]
scores.reverse()
print(scores)

5)列表.sort() - 將列表中的元素從小到大排序
列表.sort(reverse = True) - 將列表中的元素從大到小排序
列表中的元素類型必須一樣;元素必須支持比較運算符

scores = [11, 45, 64, 100, 35, 73, 56, 100]
scores.sort()
print(scores)

6)列表.clear() - 清空列表

scores = [11, 45, 64, 100, 35, 73, 56, 100]
scores.clear()
print(scores)

7)幸冻;列表.copy() - 復制列表中的元素粹庞,產(chǎn)生新的列表, 和列表[:]功能一樣
這個是淺拷貝

scores = [11, 45, 64, 100, 35, 73, 56, 100]
new_scores = scores.copy()
print(id(scores), id(new_scores))

練習:打印列表中出現(xiàn)次數(shù)最多的元素

nums = [1, 2, 3, 5, 2, 3, 3, 1, 1]
count_max = 0
for num in nums:
    count1 = nums.count(num)
    if count1 > count_max:
        count_max = count1
max_num = []
for num in nums:
    if count_max == nums.count(num):
       if num not in max_num:
           max_num.append(num)
print(max_num)

列表元素去重

nums = [1, 2, 3, 5, 2, 3, 3, 1, 1]
new_nums =[]
for num in nums:
    if num not in new_nums:
        new_nums.append(num)
print(new_nums)
nums = [1,3,1, 2, 3, 5, 2, 3, 3, 1, 1,4,5,6,7,2,4,6,8,3,6,2]
count = 0
for num in nums:
   counts = nums.count(num)
   for counts_reduce in range(counts-1):
       nums.remove(num)
print(nums)
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市洽损,隨后出現(xiàn)的幾起案子庞溜,更是在濱河造成了極大的恐慌,老刑警劉巖碑定,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件流码,死亡現(xiàn)場離奇詭異,居然都是意外死亡延刘,警方通過查閱死者的電腦和手機漫试,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來碘赖,“玉大人驾荣,你說我怎么就攤上這事∑张荩” “怎么了播掷?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長撼班。 經(jīng)常有香客問我歧匈,道長,這世上最難降的妖魔是什么砰嘁? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任眯亦,我火速辦了婚禮,結果婚禮上般码,老公的妹妹穿的比我還像新娘。我一直安慰自己乱顾,他們只是感情好板祝,可當我...
    茶點故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著走净,像睡著了一般券时。 火紅的嫁衣襯著肌膚如雪孤里。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天橘洞,我揣著相機與錄音捌袜,去河邊找鬼。 笑死炸枣,一個胖子當著我的面吹牛虏等,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播适肠,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼霍衫,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了侯养?” 一聲冷哼從身側響起敦跌,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎逛揩,沒想到半個月后柠傍,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡辩稽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年惧笛,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片搂誉。...
    茶點故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡徐紧,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出炭懊,到底是詐尸還是另有隱情并级,我是刑警寧澤,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布侮腹,位于F島的核電站嘲碧,受9級特大地震影響,放射性物質發(fā)生泄漏父阻。R本人自食惡果不足惜愈涩,卻給世界環(huán)境...
    茶點故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望加矛。 院中可真熱鬧履婉,春花似錦、人聲如沸斟览。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至已烤,卻和暖如春鸠窗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背胯究。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工稍计, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人裕循。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓臣嚣,卻偏偏與公主長得像,于是被迫代替她去往敵國和親费韭。 傳聞我的和親對象是個殘疾皇子茧球,可洞房花燭夜當晚...
    茶點故事閱讀 43,554評論 2 349

推薦閱讀更多精彩內(nèi)容

  • 一、認識列表 1.什么是列表是python中的容器類的數(shù)據(jù)類型星持,可以用來存儲多個數(shù)據(jù)抢埋。可變的督暂,有序的揪垄。可變指的是列...
    龍神海王閱讀 168評論 0 0
  • record 用''或者""引起來的字符集2.str - 不可變(不支持增刪改)逻翁、有序(支持下標語法)3.字符:...
    zlyyL閱讀 279評論 0 1
  • 1.格式字符串: 在字符串中通過格式占位符來表示字符串中的變化部分 1.1語法: 包含格式占位符的字符%(給格式占...
    ham731閱讀 507評論 0 1
  • 前言回顧 1.字符串1.count(字符串2) -> 統(tǒng)計在字符串1中字符串2出現(xiàn)的次數(shù) 2.字符串1.fin...
    不語sun閱讀 76評論 0 0
  • 一饥努、認識列表 1. 定義: 是python中的容器類的數(shù)據(jù)類型,可以用來存儲多個數(shù)據(jù)八回】崂ⅲ可變的,有序的缠诅∪茉。可變(列表中...
    丿Rem丶閱讀 146評論 0 0