日本好好热aⅴ|国产99视频精品免费观看|日本成人aV在线|久热香蕉国产在线

  • <cite id="ikgdy"><table id="ikgdy"></table></cite>
    1. 西西軟件下載最安全的下載網(wǎng)站、值得信賴的軟件下載站!

      首頁編程開發(fā)其它知識 → Python 列表 list 數(shù)據(jù)類型創(chuàng)建list、添加元素和刪除元素

      Python 列表 list 數(shù)據(jù)類型創(chuàng)建list、添加元素和刪除元素

      相關(guān)軟件相關(guān)文章發(fā)表評論 來源:西西整理時間:2013/2/8 21:11:07字體大小:A-A+

      作者:西西點擊:0次評論:1次標(biāo)簽: Python

      《派森》(Python)3.13 win32 英文安裝版
      • 類型:編程工具大。21M語言:英文 評分:8.7
      • 標(biāo)簽:
      立即下載

      列表與字典(還沒接觸到)是Python中兩個主要的數(shù)據(jù)類型。他們可以被修改,可以增長可以縮短,也可以嵌套。

      列表   list

      列表可以完成大多數(shù)集合類的數(shù)據(jù)結(jié)構(gòu)實現(xiàn)。它支持字符,數(shù)字,字符串甚至可以包含列表(所謂嵌套)。

      Python 的列表與c語言中的數(shù)組訪問方法相同,通過偏移地址訪問。

      下面舉幾個列表的例子,圖片來自《Python學(xué)習(xí)手冊(第三版)》

      為了加速進(jìn)度以及方便查詢,我們看一下對列表常用操作的整理,圖片來自《Python學(xué)習(xí)手冊(第三版)》

      現(xiàn)在我們詳細(xì)講一下幾個list的操作。

      首先我們明確,Python的list可以容納任何對象。不管他是什么格式的。

      1)創(chuàng)建list

      創(chuàng)建列表的操作非常簡單,只要用中括號報過一系列逗號分隔的值就可以了。就像第一個圖片上那樣。

      2)list 切片

      定義新列表后,我們可以列表中的任何一個部分作為新的列表,該技術(shù)在dive in python 中稱為切片。

      讓我們直接看程序。

      a_list =['a','b','c','d','e','f']    # 創(chuàng)建一個列表
      print a_list[1:3]                   # 在屏幕上打印一個切片

      值得注意的是,在list偏移訪問中,與C中數(shù)組類似,同樣用a_list[0]表示列表第一項。

      上面的程序我們得到了如下的結(jié)果:


      b c 分別是列表中第二,第三個元素,序號應(yīng)該是1 和2 ,可以看出,對于 a_list[x,y] 的切片,切片片段為序號x到y(tǒng)-1之間的內(nèi)容。

      我們也可以截取半段,讓我們看程序

      # 位置     1   2   3   4   5   6
      # 序號     0   1   2   3   4   5
      a_list =['a','b','c','d','e','f']   #                  定義
      print a_list[:3]                                   
      print a_list[3:]

      從結(jié)果中我們可以看出,第一個片段[:3] 取的是從第一位到第三位的片段,而[3:] 獲取的是從第四位,到結(jié)尾的片段。

      無論列表多長[:n]片段中總含有n個元素。

      如果將x,y都留空,那么程序?qū)⑷×斜韮?nèi)全部的元素,但是卻獲得了一個新的列表。

      如果x , y中有負(fù)數(shù)怎么辦,讓我們來看一下

      # 位置     1   2   3   4   5   6
      # 序號     0   1   2   3   4   5
      a_list =['a','b','c','d','e','f']   
      print a_list[-1:3]                    
      print a_list[3:-1]

      第一個print輸出了空的list, 第二個卻輸出了兩個。 認(rèn)真看我們可以看出,負(fù)數(shù)是指從右往左數(shù),正數(shù)是指,從左往右。

      3)向列表list中添加元素

      從第三題中,我們認(rèn)識到append可以向list中添加元素。

      a_list.append('NEW')

      讓我們測試一下這句話.

      # 位置     1   2   3   4   5   6
      # 序號     0   1   2   3   4   5
      a_list =['a','b','c','d','e','f']
      a_list.append('NEW')
      print a_list

      字符串 NEW 已經(jīng)被添加到該列表結(jié)尾處了.

      當(dāng)然除了append 這種只能在末尾添加 元素 的操作來說,我們還要插入操作

      a_list.insert( n,35434)

      insert 后面有兩個操作符, 那么n表示插入哪個元素之后, 那串?dāng)?shù)表示插入什么東西,當(dāng)然任何類型的都可以,讓我們試一下這個新認(rèn)識的方法.

      # 位置     1   2   3   4   5   6
      # 序號     0   1   2   3   4   5
      a_list =['a','b','c','d','e','f']
      a_list.insert(2,'NEW')
      print a_list
      a_list.insert(6,43223452)
      print a_list

      可以看到,插入位置是n號元素之前。

      這兩種操作都是單個元素插入,當(dāng)我們需要將大量數(shù)據(jù)放在列表末尾的時候,我們就需要另一個新的方法了。

      a_list.extend( [ 'fdaf',342 ] )

      看一下例子就好了.

      # 位置     1   2   3   4   5   6
      # 序號     0   1   2   3   4   5
      a_list =['a','b','c','d','e','f']
      a_list.extend( [ 'fdaf',342 ] )
      print a_list

      當(dāng)然我們還有更簡單的在末尾擴增list的方法.

      +

      沒錯,就是一個符號.

      # 位置     1   2   3   4   5   6
      # 序號     0   1   2   3   4   5
      a_list =['a','b','c','d','e','f']
      a_list+=[ 'fdaf',342 ]
      print a_list

      看,我們得到了相同的結(jié)果!

      4)在列表中查詢

      在C語言中,遍歷數(shù)組什么的是常見的問題,我們需要知道,數(shù)組中有沒有某個元素,某個元素在數(shù)組中的什么位置,某個元素在數(shù)組中出現(xiàn)的次數(shù) 等等等。這些也許在C中需要長篇累牘的描述算法,但是Python豐富的庫資源已經(jīng)把這些問題解決了。讓我們看看下面的表吧:

      a_list.count(  'NEW' )     #計算出現(xiàn)次數(shù)
      a_list.index( 'NEW' )        #尋找第一次出現(xiàn)的位置
      'NEW' in a_list        #確認(rèn)元素是否出現(xiàn)在list中

      現(xiàn)在我們測試一下這幾種功能。

      # 位置     1   2   3   4   5   6
      # 序號     0   1   2   3   4   5
      a_list =['a','b','c','d','e','f']
      print a_list.count(  'NEW' )     #計算出現(xiàn)次數(shù)
      print 'NEW' in a_list        #確認(rèn)元素是否出現(xiàn)在list中

      我們沒有測試index,因為index 有個比較有趣的現(xiàn)象,讓我們來試一下。

      # 位置     1   2   3   4   5   6    7
      # 序號     0   1   2   3   4   5    6
      a_list =['a','b','c','d','e','f','NEW']
      print a_list.index(  'NEW' )

      list中存在NEW,返回了正確的值。如果沒有NEW會怎么樣的呢

      # 位置     1   2   3   4   5   6
      # 序號     0   1   2   3   4   5
      a_list =['a','b','c','d','e','f']
      print a_list.index(  'NEW' )

      竟然提示錯誤,當(dāng)然,這個就是引發(fā)了一個異常。之后我們會漸漸認(rèn)識到這個做法的好處。

      5)從列表中刪除元素

      既然我們插入了元素,那么我們也可以刪除他,但是,元素的插入與刪除并不像C語言那么麻煩,刪除操作是如此的簡單,大家看下例子就會了。

      當(dāng)我們知道元素的確切位置的時候,我們使用

      del a_list[n]

      當(dāng)我們不知道位置,而是知道刪除什么的時候,使用:

      a_list.remove(    )

      與求元素準(zhǔn)確位置一樣,如果刪除一個list中不存在的元素會引發(fā)程序錯誤。

      最后我們確認(rèn)一點,空列表的布爾值為False,其他的列表均為Ture。

        相關(guān)評論

        閱讀本文后您有什么感想? 已有人給出評價!

        • 8 喜歡喜歡
        • 3 頂
        • 1 難過難過
        • 5 囧
        • 3 圍觀圍觀
        • 2 無聊無聊

        熱門評論

        最新評論

        發(fā)表評論 查看所有評論(1)

        昵稱:
        表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
        字?jǐn)?shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)
        推薦文章

        沒有數(shù)據(jù)