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 閱讀(208) 評論(0)  編輯  收藏 所屬分類: Python學習筆記

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

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          文章分類

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 林口县| 松溪县| 杂多县| 尖扎县| 清涧县| 德庆县| 朝阳区| 西充县| 库尔勒市| 方城县| 盐边县| 元阳县| 彩票| 新郑市| 新龙县| 镇雄县| 承德市| 青冈县| 藁城市| 嵊州市| 利辛县| 白山市| 文水县| 新营市| 宁明县| 甘南县| 馆陶县| 柯坪县| 尼木县| 从化市| 阿巴嘎旗| 大姚县| 大洼县| 香港 | 临猗县| 河南省| 达拉特旗| 稻城县| 元江| 遂平县| 丰都县|