<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                #### 切片 在Python中常見的操作是取一個list或tuple的一部分,比如一個list如下: ~~~ L = ['red','yellow','black','orange','white','green','blue'] ~~~ 取前三個元素的操作,除了用循環,還可以用切片: ~~~ L[0:3] #表示從索引0開始取,直到索引3為止,但不包括索引3。即索引0,1,2,正好是3個元素 print(L[-2:]) #表示取倒數后兩個 ~~~ 實例: ~~~ #定義從1到100的序列 L = list(range(100)) #取前十個,同時隔一個數取一個 print(L[:10:2]) ~~~ #### 迭代 一般程序語言的迭代使用for。Python的for循環不僅可以用在list或tuple上,還可以作用在其他可迭代對象上。? 除了list這種有下標的數據類型,還有例如dict這樣的無下標的,也可以使用for迭代。 ~~~ d = {'funny':1,'lucky':2,'daddy':3} for key in d: print(key) #因為dict的存儲不是按照list的方式順序排列,所以,迭代出的結果順序很可能不一樣。 ~~~ 同時value也可以迭代。 ~~~ for values in d.values(): print(values) ~~~ 如何判斷一個對象是可迭代對象呢?方法是通過collections模塊的Iterable類型判斷: ~~~ >>> from collections import Iterable >>> isinstance('abc', Iterable) # str是否可迭代 True >>> isinstance([1,2,3], Iterable) # list是否可迭代 True >>> isinstance(123, Iterable) # 整數是否可迭代 False ~~~ #### 列表生成式(List Comprehensions) python內置了功能強大的列表生成式。? 實例: ~~~ l = list(range(1,11)) print(l) ~~~ 輸出:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]? 實例:輸出1-10 的平方 ~~~ L = [] for x in range(1,11): L.append(x*x) ~~~ 練習:? L1 = [‘Hello’, ‘World’, 18, ‘Apple’, None]? 期待輸出: [‘hello’, ‘world’, ‘apple’]? code: ~~~ L1 = ['Hello', 'World', 18, 'Apple', None] L2 = [] for x in L1: if isinstance(x,str): L2.append(x.lower()) print(L2) ~~~ #### 生成器 在Python中,一邊循環一邊計算的機制,稱為生成器:generator,即只計算出要使用的數,節省空間。? 要創建一個generator,有很多種方法。第一種方法很簡單,只要把一個列表生成式的[]改成(),就創建了一個generator: ~~~ L = [x * x for x in range(10)] L [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] g = (x * x for x in range(10)) g <generator object <genexpr> at 0x1022ef630> ~~~ 打印generator: ~~~ g = (x*x for x in range(10)) for x in g: print(x) ~~~ 練習 楊輝三角定義如下:? 1? 1 1? 1 2 1? 1 3 3 1? 1 4 6 4 1? 1 5 10 10 5 1? 把每一行看做一個list,試寫一個generator,不斷輸出下一行的list. ~~~ def triangles(): L = [1] while True: yield L L1 = L[:] L = [] i = 0 while i < len(L1) - 1: L.append(L1[i] + L1[i+1]) i = i + 1 L.insert(0, 1) L.append(1) n = 0 for t in triangles(): print(t) n = n + 1 if n == 10: break ~~~
                  <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>

                              哎呀哎呀视频在线观看