posts - 13,  comments - 3,  trackbacks - 0

          條件語句
              if相關
              格式:
                  1)    if expression : statement #只有一個if并且代碼塊只有一行,可以直接寫在:后面
                  2)    if expression:
                          statement
                      else:
                          statement
                  3)    if expression:
                          statement
                      elif expr2:
                          statement
                      elif ... :
                          ...
                      else:
                          statement n
              三元操作符
                  X if C else Y
              while / for and break / else
              while循環基本結構
                  while xxx:
                      statement
              for循環基本結構
                  for xx in iterable:
                      statement
              循環+else
                  loop
                      if ...:
                          xxx
                          break
                  else:
                      statement
                  循環+else結構,指的是如果循環完成,則執行else中的語句
              continue與c / java中一樣
              pass: nop
          迭代器
              迭代器的要求:
                  提供next()方法,每次都取出下一個對象。當next到末尾時,拋出一個StopIteration異常
              迭代器的使用:
                  for循環可以支持所有可迭代的對象 (列表、字典、文件。。。)
                  使用迭代器時不應當改變其內容
              創建迭代器
                  對一個對象調用 iter() 就可以得到它的迭代器. 它的語法如下:
                  iter(obj)
                  iter(func, sentinel )
                  如果是傳遞兩個參數給 iter() , 它會重復地調用 func , 直到迭代器的下個值等于sentinel

          列表解析
              語法
                  [expr for iter_var in iterable if cond_expr] #[]不能省略
              結果:
                  根據if條件,對iterable中所有元素進行expr,并返回一個結果列表
                  1. 不滿足if條件的元素會被忽略,不會在結果列表中
                  2. 滿足if條件的元素會進行expr
                  3. 最后會創建一個新列表保存結果
              eg
                  >>> a = [1,2,3,4,5,6]
                  >>> p = [value*2 for value in a if value%2==0]
                  >>> print p
                  [4, 8, 12]
                  >>>

          生成器表達式
              語法
                  (expr for iter_var in iterable if cond_expr) #()可以省略
              特點(與列表解析的區別)
                  表達式返回的是一個生成器。這個生成器會根據要求,把元素一個一個“生成出來”
                  優點:節約內存空間,在很多情況下也能提高速度
              例子:
                  return max(len(x.strip()) for x in open('/etc/motd')) #統計/etc/motd文件中最長的一行

           

          note note

          posted on 2011-06-13 15:40 Antony Lee 閱讀(200) 評論(0)  編輯  收藏 所屬分類: Python學習筆記

          <2011年6月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          文章分類

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 洪雅县| 健康| 浦县| 永靖县| 永昌县| 临清市| 嘉义县| 浦江县| 东乡族自治县| 湖州市| 庐江县| 南雄市| 军事| 沙河市| 观塘区| 昭通市| 嘉禾县| 新郑市| 富裕县| 宁蒗| 桂阳县| 读书| 河津市| 炎陵县| 小金县| 吉林省| 嘉峪关市| 澜沧| 静宁县| 鹤庆县| 葵青区| 大丰市| 黔东| 晋州市| 改则县| 南江县| 新和县| 奇台县| 罗山县| 汤阴县| 临城县|