<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Python基礎(chǔ)第五講:Python 列表的七大操作有哪些?

          共 4766字,需瀏覽 10分鐘

           ·

          2021-04-01 00:07

          原創(chuàng)小白系列第 6 
          小白:小碼哥,通過上一篇文章劉德華告訴你:什么是列表?,我已經(jīng)知道了什么是列表。我該怎么用它呢?


          小碼哥:今天我們一起聊一下列表的七大操作。在工作中,這些操作經(jīng)常被用到。


          01
          如何判斷什么是列表呢?


          在Python中,type()函數(shù)被用來查看變量的類型。


          只有知道了變量的類型才能對其進行相應(yīng)的操作,因為不同的數(shù)據(jù)類型有不同的操作,比如字符串有自己獨特的一系列操作。


          同樣,我們使用該函數(shù)查看列表在Python中的類型表示為<class 'list'>,具體如下:


          例子

          # 查看變量的類型

          print('names_python_pc的數(shù)據(jù)類型是:',type(names_python_pc))

           

          names_python_pc的數(shù)據(jù)類型是:<class 'list'>


          在實際項目中,變量的各種類型都會用到。


          當(dāng)看到<class 'list'>就表示是列表,我們才可以對其進行列表的各種操作。




          02
          列表的七大操作


          列表常見的操作有訪問元素、添加元素、修改元素、刪除元素以及列表排序等等。


          1.訪問列表元素:


          列表是有序的,每一個元素都自動帶有一個位置信息,也就是索引


          在編程語言中,無論Python還是其他的語言,索引都是從0開始,而不是1。


          第0個索引對應(yīng)的元素就是第一個元素,以此類推,比如在列表names_python_pc中,第0個索引對應(yīng)的列表元素就是’陳升‘;第三個索引,也就是最后一個元素對應(yīng)的是‘TFboys’,具體如圖所示。


          訪問列表元素的方法是根據(jù)索引訪問,只需要指出索引號即可。

           

          例子

          # 根據(jù)索引訪問列表元素,并且賦值給變量three_str

          three_str = names_python_pc[2]

          # 直接打印(print)列表元素或根據(jù)變量打印,項目中經(jīng)常用到

          print(names_python_pc[2])

          print('列表中第三個元素是:{}'.format(three_str))

           

          楊冪

          列表中第三個元素是:楊冪

           

          訪問列表中最后一個元素的方法有兩個:第一個是通過索引號[-1]來獲取。


          這個特殊的語法特別有用,尤其在項目中,不知道一個excel文件具體有多少列,但是我們記得最后一列是想要獲取的信息,此時就可以使用該方法;



          第二個:明確知道列表有多少列,使用最后一列的索引即可。


          例子

          # 兩種方法訪問最后一個元素

          names_python_pc[-1]

          print('使用第一種方法,獲得列表最后一個元素是{}'.format(names_python_pc[-1]))

          names_python_pc[3]

          print('使用第二種方法,獲得列表最后一個元素是{}'.format(names_python_pc[3]))

           

          使用第一種方法,獲得列表最后一個元素是 TFboys

          使用第二種方法,獲得列表最后一個元素是 TFboys


          2.添加列表元素:


          列表是可變的。在列表中添加元素分為兩種情況:

          (1)第一種:在指定位置插入一個元素,用到的方法是:

          # insert方法 根據(jù)索引位置插入元素

          insert(index,x)

          index 是準(zhǔn)備插入到其前面的那個元素的索引; x為需要插入的元素。

           

          例子

          print('原來的成員列表:{}'.format(names_python_pc))

          names_python_pc.insert(0,'魏瓔珞')

          print('插入新的成員以后的列表:{}'.format(names_python_pc))

           

          原來的成員列表:['陳升', '劉德華', '楊冪', 'TFboys']

          插入新的成員以后的列表:['魏瓔珞', '陳升', '劉德華', '楊冪', 'TFboys']

           

          (2)第二種:在列表的末位添加元素,用到的方法是:


          # append(x)  x為需要插入的元素,并且是插入到列表的最后

          例子

          # append(x)

          print('原來的成員列表:{}'.format(names_python_pc))

          names_python_pc.append('傅恒')

          print('插入新的成員以后的列表:{}'.format(names_python_pc))

           

          原來的成員列表:['魏瓔珞', '陳升', '劉德華', '楊冪', 'TFboys']

          插入新的成員以后的列表:['魏瓔珞', '陳升', '劉德華', '楊冪', 'TFboys', '傅恒']


          這兩種方法相比。第一種比第二種的計算代價更高,因為第一種方法的插入位置不確定,之后的所有元素不得不在內(nèi)部自己移動位置。


          而第二種方法是在末尾插入,相對比較快。




          修改列表元素:


          修改列表元素與訪問列表元素一樣,根據(jù)索引即可修改元素的值。

          例子

          # 修改第三個元素的值

          names_python_pc[2] = '扶搖'

          print('修改后的成員列表:{}'.format(names_python_pc))

           

          修改后的成員列表:['魏瓔珞', '陳升', '扶搖', '楊冪', 'TFboys', '傅恒']


          4.刪除列表元素:


          在項目中,我們經(jīng)常需要刪除列表中的元素。


          python可以根據(jù)索引值刪除,也可以根據(jù)元素值刪除。如果我們記得要刪除的元素的位置,則可以根據(jù)索引值刪除,用到的是語句del()或者方法pop


          語句del(index) 根據(jù)索引值刪除元素,并且刪除后不可以賦值給任何變量;方法pop()刪除列表尾部的元素,或者pop(index)感覺索引值刪除,但是pop方法刪除后的元素可以賦值給變量。這就是兩者的最大區(qū)別。


          例子

          # 刪除列表中的魏瓔珞

          del names_python_pc[0]

          print('del語句刪除列表中的魏瓔珞后的列表是{}'.format(names_python_pc))

           

          # POP方法刪除列表中的傅恒

          delete_name = names_python_pc.pop()

          print(f'pop方法刪除的元素是{delete_name}')

           

          # 根據(jù)位置刪除 扶搖

          delete_name_index = names_python_pc.pop(1)

          print(f'pop根據(jù)索引刪除的元素值是{delete_name_index}')

           

          del語句刪除列表中的魏瓔珞后的列表是['陳升', '扶搖', '楊冪', 'TFboys', '傅恒']

          pop方法刪除的元素是 傅恒

          pop根據(jù)索引刪除元素值是 扶搖


          如何我們不記得要刪除的列表元素的位置,只是記得值,可以采用的方法是remove()。如果列表中有多個類似的值,則remove()方法一次只能刪除一個。


          語法:

          列表名.remove('')

          例子

          print("原來的列表是:",names_python_pc)

          # 刪除列表中的TFboys

          names_python_pc.remove('TFboys')

          print(f'刪除后的列表是{names_python_pc}')

           

          原來的列表是: ['陳升', '楊冪', 'TFboys']

          刪除后的列表是['陳升', '楊冪']

           


          5.列表排序


          很多時候,我們需要對列表中的元素進行排序,然后進行運算。列表排序分為永久性排序和臨時性排序。永久性排序是真正修改列表元素的排列順序,用到的方法是sort(),默認為升序。如果是降序,添加參數(shù) reverse=True。另外sort()中有一些選項很有用,比如使用字符串的長度排序;而臨時性排序是不改變原來的排列順序,用到的函數(shù)是sorted()。它返回一個新建的已排序列表,原來的列表順序不受影響。


          # sort() 根據(jù)長度排序names_python_pc = ['Baby', 'Andy Liu', 'We', 'TFboys']print('原來的順序是:',names_python_pc)names_python_pc.sort(key = len)print('根據(jù)元素長度排序后的結(jié)果是:',names_python_pc)

          # 臨時排序temp_list = sorted(list_1)print('臨時排序', temp_list)print('原來的列表元素順序',list_1)

           

          臨時排序 ['a', 'b', 'd', 'e', 'f', 'f', 'g', 'p']

          原來的列表元素順序 ['p', 'g', 'f', 'f', 'e', 'd', 'b', 'a']

           

          6.判斷一個元素是否在列表中


           在Python編程中,我們經(jīng)常使用 in 和not in 來判斷一個元素是否在列表中。如果滿足則返回True,否則返回False。


          例子

          # 使用 in 判斷一個元素是否在列表中names_python_pc = ['陳升','劉德華','楊冪','TFboys']in_e = '劉德華' in names_python_pcprint('使用 in 判斷一個元素是否在列表中', in_e)# 使用 not in 判斷一個元素不在列表中not_in_e = 'fuyao' not in names_python_pcprint('使用 not in 判斷一個元素不在列表中',not_in_e)

           

          使用 in 判斷一個元素是否在列表中 True

          使用 not in 判斷一個元素不在列表中 True

           

          7 在數(shù)據(jù)分析中,我們經(jīng)常需要把兩個列表拼接成一個列表。


          在Python中,我們使用加號(+)拼接兩個已經(jīng)存在的列表為一個新的列表;


          也可以使用extend方法向已存在的列表中添加另一個列表。


          注意第一種方法相對代價高,推薦使用extend方法拼接兩個存在的列表。


          # 使用 + 連接兩個列表names_python_pc = ['陳升','劉德華','楊冪','TFboys']number = [2, 5, 7, 8]linked_list = names_python_pc + numberprint('連接后的列表是:{}'.format(linked_list))# 使用extend方法向以存在的列表添加多個元素linked_list_2 = names_python_pc.extend(number)print('使用extend方法添加列表元素:{}'.format(names_python_pclinked_list))# 使用 * 重復(fù)列表元素number = number * 2print('使用*重復(fù)列表元素:',number)

           

          連接后的列表是:['陳升', '劉德華', '楊冪', 'TFboys', 2, 5, 7, 8]

          使用extend方法添加列表元素:['陳升', '劉德華', '楊冪', 'TFboys', 2, 5, 7, 8]

          使用*重復(fù)列表元素:[2, 5, 7, 8, 2, 5, 7, 8]

          以上內(nèi)容摘自《零基礎(chǔ)輕松學(xué) Python》


          瀏覽 12
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产亚洲色婷婷久久99 | 中文字幕第一页AV | 豆花视频成人网站入口免费观看 | 无码婷婷| 91精品久久久久久综合五月天 |