<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] # 切片 Python提供了切片(Slice)操作符 字典不支持切片 取前3個元素,用一行代碼就可以完成切片: ~~~ >>> L[0:3] ['Michael', 'Sarah', 'Tracy'] ~~~ `L[0:3]`表示,從索引0開始取,直到索引3為止,但不包括索引3。即索引0,1,2,正好是3個元素。 如果第一個索引是0,還可以省略: ~~~ >>> L[:3] ['Michael', 'Sarah', 'Tracy'] ~~~ 也可以從索引1開始,取出2個元素出來: ~~~ >>> L[1:3] ['Sarah', 'Tracy'] ~~~ 類似的,既然Python支持`L[-1]`取倒數第一個元素,那么它同樣支持倒數切片,試試: ~~~ >>> L[-2:] ['Bob', 'Jack'] >>> L[-2:-1] ['Bob'] ~~~ 記住倒數第一個元素的索引是-1 甚至什么都不寫,只寫`[:]`就可以原樣復制一個list: ~~~ >>> L[:] [0, 1, 2, 3, ..., 99] ~~~ tuple也是一種list,唯一區別是tuple不可變。因此,tuple也可以用切片操作,只是操作的結果仍是tuple: ~~~ >>> (0, 1, 2, 3, 4, 5)[:3] (0, 1, 2) ~~~ 字符串'xxx'也可以看成是一種list,每個元素就是一個字符。因此,字符串也可以用切片操作,只是操作結果仍是字符串: ~~~ >>> 'ABCDEFG'[:3] 'ABC' >>> 'ABCDEFG'[::2] 'ACEG' ~~~ 跳幾個取 ~~~ str = ['hello', 'world', 'php', 'python', 'java', 'c/c++', 'shell'] # 第一個位置是離起始位置,第二個是離終止的位置 # 從2往右邊找不到0 print(str[2:0]) print(str[2:-1]) # 第3個是他們之間跳幾個,也就是步長 print(str[2:-1:2]) print(str[2:-1:1]) # 往回跳著走 print(str[-1:2:-1]) ~~~ 輸出 ~~~ [] ['php', 'python', 'java', 'c/c++'] ['php', 'java'] ['php', 'python', 'java', 'c/c++'] ~~~ # 迭代 在Python中,迭代是通過`for ... in`來完成的 只要是可迭代對象,無論有無下標,都可以迭代,比如dict就可以迭代: ~~~ >>> d = {'a': 1, 'b': 2, 'c': 3} >>> for key in d: ... print(key) ... a c b ~~~ 因為dict的存儲不是按照list的方式順序排列,所以,迭代出的結果順序很可能不一樣。 **默認情況下,dict迭代的是key。如果要迭代value,可以用for value in d.values(),如果要同時迭代key和value,可以用`for k, v in d.items()`** 由于字符串也是可迭代對象,因此,也可以作用于for循環 **如何判斷一個對象是可迭代對象呢?** 方法是通過collections模塊的Iterable類型判斷: ~~~ >>> from collections import Iterable >>> isinstance('abc', Iterable) # str是否可迭代 True >>> isinstance([1,2,3], Iterable) # list是否可迭代 True >>> isinstance(123, Iterable) # 整數是否可迭代 False ~~~ 如果要對list實現類似Java那樣的下標循環怎么辦?Python內置的enumerate函數可以把一個list變成索引-元素對,這樣就可以在for循環中同時迭代索引和元素本身: ~~~ >>> for i, value in enumerate(['A', 'B', 'C']): ... print(i, value) ... 0 A 1 B 2 C ~~~ 上面的for循環里,同時引用了兩個變量,在Python里是很常見的,比如下面的代碼: ~~~ >>> for x, y in [(1, 1), (2, 4), (3, 9)]: ... print(x, y) ... 1 1 2 4 3 9 ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看