>>A=['apple',1,[1,2,'peach'],2]列表可以包含多種元素,可以進行嵌套,帶有多種方法(具體的方法,可以查看相關手冊),通過這些方法,列表可以有很多功能,例如可以當做棧,隊列(低效,一般不用)等," />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

python中的列表推導式

系統 1893 0

序言

python的列表對象是這個語言提供的最通用的序列,列表是一個任意類型的對象的位置相關的有序集合,它沒有固定的大小。不像字符串,其大小是可變的,通過對偏移量進行賦值以及其他各種列表的方法進行調用,確實能夠修改列表的大小。列表的形式如下

            
              
                >>
              
              
                >
              
               A 
              
                =
              
              
                [
              
              
                'apple'
              
              
                ,
              
              
                1
              
              
                ,
              
              
                [
              
              
                1
              
              
                ,
              
              
                2
              
              
                ,
              
              
                'peach'
              
              
                ]
              
              
                ,
              
              
                2
              
              
                ]
              
            
          

列表可以包含多種元素,可以進行嵌套,帶有多種方法(具體的方法,可以查看相關手冊),通過這些方法,列表可以有很多功能,例如可以當做棧,隊列(低效,一般不用)等,下面我們主要介紹 列表推導式 的使用。

主體內容

列表推導式提供了一個更簡單的創建列表的方法。常見的用法是把某種操作應用于序列或可迭代對象的每個元素上,然后使用其結果來創建列表,或者通過滿足某些特定條件元素來創建子序列
例如,我們通常創建一個列表,是這樣的姿勢

            
              
                >>
              
              
                >
              
               squares 
              
                =
              
              
                [
              
              
                ]
              
              
                >>
              
              
                >
              
              
                for
              
               x 
              
                in
              
              
                range
              
              
                (
              
              
                10
              
              
                )
              
              
                :
              
              
                .
              
              
                .
              
              
                .
              
                   squares
              
                .
              
              append
              
                (
              
              x
              
                **
              
              
                2
              
              
                )
              
              
                .
              
              
                .
              
              
                .
              
              
                >>
              
              
                >
              
               squares

              
                [
              
              
                0
              
              
                ,
              
              
                1
              
              
                ,
              
              
                4
              
              
                ,
              
              
                9
              
              
                ,
              
              
                16
              
              
                ,
              
              
                25
              
              
                ,
              
              
                36
              
              
                ,
              
              
                49
              
              
                ,
              
              
                64
              
              
                ,
              
              
                81
              
              
                ]
              
            
          

但是,我們也可以這樣創建

            
              squares 
              
                =
              
              
                [
              
              x
              
                **
              
              
                2
              
              
                for
              
               x 
              
                in
              
              
                range
              
              
                (
              
              
                10
              
              
                )
              
              
                ]
              
            
          

它們的結果是一樣的,但第二種方法更加簡潔易讀。
列表推導式 的結構是由 一對方括號 所包含的以下內容: 一個表達式,后面跟一個 for 子句,然后是零個或多個 for 或 if 子句 。 其結果將是一個新列表,由對表達式依據后面的 for 和 if 子句的內容進行求值計算而得出。例如下面的例子。

            
              
                >>
              
              
                >
              
              
                [
              
              
                (
              
              x
              
                ,
              
               y
              
                )
              
              
                for
              
               x 
              
                in
              
              
                [
              
              
                1
              
              
                ,
              
              
                2
              
              
                ,
              
              
                3
              
              
                ]
              
              
                for
              
               y 
              
                in
              
              
                [
              
              
                3
              
              
                ,
              
              
                1
              
              
                ,
              
              
                4
              
              
                ]
              
              
                if
              
               x 
              
                !=
              
               y
              
                ]
              
              
                [
              
              
                (
              
              
                1
              
              
                ,
              
              
                3
              
              
                )
              
              
                ,
              
              
                (
              
              
                1
              
              
                ,
              
              
                4
              
              
                )
              
              
                ,
              
              
                (
              
              
                2
              
              
                ,
              
              
                3
              
              
                )
              
              
                ,
              
              
                (
              
              
                2
              
              
                ,
              
              
                1
              
              
                )
              
              
                ,
              
              
                (
              
              
                2
              
              
                ,
              
              
                4
              
              
                )
              
              
                ,
              
              
                (
              
              
                3
              
              
                ,
              
              
                1
              
              
                )
              
              
                ,
              
              
                (
              
              
                3
              
              
                ,
              
              
                4
              
              
                )
              
              
                ]
              
            
          

它等價于

            
              
                >>
              
              
                >
              
               combs 
              
                =
              
              
                [
              
              
                ]
              
              
                >>
              
              
                >
              
              
                for
              
               x 
              
                in
              
              
                [
              
              
                1
              
              
                ,
              
              
                2
              
              
                ,
              
              
                3
              
              
                ]
              
              
                :
              
              
                .
              
              
                .
              
              
                .
              
              
                for
              
               y 
              
                in
              
              
                [
              
              
                3
              
              
                ,
              
              
                1
              
              
                ,
              
              
                4
              
              
                ]
              
              
                :
              
              
                .
              
              
                .
              
              
                .
              
              
                if
              
               x 
              
                !=
              
               y
              
                :
              
              
                .
              
              
                .
              
              
                .
              
                           combs
              
                .
              
              append
              
                (
              
              
                (
              
              x
              
                ,
              
               y
              
                )
              
              
                )
              
              
                .
              
              
                .
              
              
                .
              
              
                >>
              
              
                >
              
               combs

              
                [
              
              
                (
              
              
                1
              
              
                ,
              
              
                3
              
              
                )
              
              
                ,
              
              
                (
              
              
                1
              
              
                ,
              
              
                4
              
              
                )
              
              
                ,
              
              
                (
              
              
                2
              
              
                ,
              
              
                3
              
              
                )
              
              
                ,
              
              
                (
              
              
                2
              
              
                ,
              
              
                1
              
              
                )
              
              
                ,
              
              
                (
              
              
                2
              
              
                ,
              
              
                4
              
              
                )
              
              
                ,
              
              
                (
              
              
                3
              
              
                ,
              
              
                1
              
              
                )
              
              
                ,
              
              
                (
              
              
                3
              
              
                ,
              
              
                4
              
              
                )
              
              
                ]
              
            
          

列表推導式可以使用復雜的表達式和嵌套函數

            
              
                >>
              
              
                >
              
              
                from
              
               math 
              
                import
              
               pi

              
                >>
              
              
                >
              
              
                [
              
              
                str
              
              
                (
              
              
                round
              
              
                (
              
              pi
              
                ,
              
               i
              
                )
              
              
                )
              
              
                for
              
               i 
              
                in
              
              
                range
              
              
                (
              
              
                1
              
              
                ,
              
              
                6
              
              
                )
              
              
                ]
              
              
                [
              
              
                '3.1'
              
              
                ,
              
              
                '3.14'
              
              
                ,
              
              
                '3.142'
              
              
                ,
              
              
                '3.1416'
              
              
                ,
              
              
                '3.14159'
              
              
                ]
              
            
          

列表推導式也支持嵌套,如下代碼所示

            
              
                >>
              
              
                >
              
               matrix 
              
                =
              
              
                [
              
              
                .
              
              
                .
              
              
                .
              
              
                [
              
              
                1
              
              
                ,
              
              
                2
              
              
                ,
              
              
                3
              
              
                ,
              
              
                4
              
              
                ]
              
              
                ,
              
              
                .
              
              
                .
              
              
                .
              
              
                [
              
              
                5
              
              
                ,
              
              
                6
              
              
                ,
              
              
                7
              
              
                ,
              
              
                8
              
              
                ]
              
              
                ,
              
              
                .
              
              
                .
              
              
                .
              
              
                [
              
              
                9
              
              
                ,
              
              
                10
              
              
                ,
              
              
                11
              
              
                ,
              
              
                12
              
              
                ]
              
              
                ,
              
              
                .
              
              
                .
              
              
                .
              
              
                ]
              
            
          

下面的列表推導式將交換其行和列

            
              
                >>
              
              
                >
              
              
                [
              
              
                [
              
              row
              
                [
              
              i
              
                ]
              
              
                for
              
               row 
              
                in
              
               matrix
              
                ]
              
              
                for
              
               i 
              
                in
              
              
                range
              
              
                (
              
              
                4
              
              
                )
              
              
                ]
              
              
                [
              
              
                [
              
              
                1
              
              
                ,
              
              
                5
              
              
                ,
              
              
                9
              
              
                ]
              
              
                ,
              
              
                [
              
              
                2
              
              
                ,
              
              
                6
              
              
                ,
              
              
                10
              
              
                ]
              
              
                ,
              
              
                [
              
              
                3
              
              
                ,
              
              
                7
              
              
                ,
              
              
                11
              
              
                ]
              
              
                ,
              
              
                [
              
              
                4
              
              
                ,
              
              
                8
              
              
                ,
              
              
                12
              
              
                ]
              
              
                ]
              
            
          

更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 精品视频午夜一区二区 | 狠狠亚洲婷婷综合色香 | 麻豆亚洲精品一区二区 | 中文字幕 日韩在线 | 四虎影院在线播放 | 久草高清视频 | 国产xxx视频| 欧美日韩国产超高清免费看片 | 手机免费在线观看 | 青青青国产精品一区二区 | 国产精品分类视频分类一区 | 久久综合一区二区三区 | 国产永久一区二区三区 | 激情亚州| 天天夜夜骑| 国产成在线人视频免费视频 | 国产精品www | 欧美日韩中文一区二区三区 | 久久永久视频 | 日韩欧美在线播放 | 国产欧美日韩精品第三区 | 九九热最新视频 | 欧美成人三级视频 | 久久免费视频6 | 久久久这里只有免费精品2018 | 综合亚洲欧美日韩一区二区 | 丝袜亚洲精品中文字幕一区 | 国产精品福利视频一区二区三区 | 欧美在线一级精品 | 国产素人在线 | 四虎免费在线观看 | 鲁啊鲁啊鲁在线视频播放 | 成人免费视频一区二区三区 | 婷婷五月色综合香五月 | 免费一看一级毛片全播放 | 免费又黄又爽视频 | 欧美xxxx成人免费视频 | 国产第五页| 欧美精品在欧美一区二区 | 精品视频免费 | 午夜私人影院粉色视频我要 |