Python if for else elif while break loop pass 控制流程工具__Python

來源:互聯網
上載者:User


if 語句:
1、if ... elif ... elif ... else ,其中 else 是可選的,if 和 elif 有相同的縮排,在一行最後有一個冒號

for 語句:
2、跟 C 和 Pascal 有些區別,Python 的 for 語句按照 item 在序列中排列順序遍曆中的所有 item

>>> # Measure some strings:... words = ['cat', 'window', 'defenestrate']>>> for w in words:...     print(w, len(w))...cat 3window 6defenestrate 12

3、如果你需要修改你正在遍曆的序列,推薦首先製作序列的一個副本 copy
>>> for w in words[:]:  # Loop over a slice copy of the entire list....     if len(w) > 6:...         words.insert(0, w)...>>> words['defenestrate', 'cat', 'window', 'defenestrate']4、range() 函數>>> for i in range(5):...     print(i)...01234

給定的 終點 end point 從來不是產生的序列的一部分,range(10) 產生 0~9

5、可以指定序列的開始數字,公差預設為 1,也可以指定 等差數列 的公差
range(5, 10)
   5 through 9

range(0, 10, 3)
   0, 3, 6, 9

range(-10, -100, -30)
  -10, -40, -70

6、為了遍曆序列的索引,可以結合 range() 和 len() 函數:
>>> a = ['Mary', 'had', 'a', 'little', 'lamb']>>> for i in range(len(a)):...     print(i, a[i])...0 Mary1 had2 a3 little4 lamb

7、range() 返回的不是一個 list,而是一個 object,當你遍曆它時,他會按照預訂的順序返回,to save space。所以當你輸入下面的語句時,會出現奇怪的結果:
>>> print(range(10))
range(0,10)

8、我們說一個 對象 object 是 可遍曆的 iterable,也就是說,適用於那些需要獲得連續 item 直到最後一個的函數的對象。我們看到 for 語句是一個 iterator,函數 list()是另外一個,它從 iterable 中建立 lists
>>> list(range(5))
[0, 1, 2, 3, 4]

9、Python 中,else 子句更多地與 迴圈語句,或者 try 語句一起使用。跟前者使用表示沒有 break 執行,跟 try 語句一起使用,表示沒有異常發生
一個尋找素數的演算法:
>>> for n in range(2, 10):...     for x in range(2, n):...         if n % x == 0:...             print(n, 'equals', x, '*', n//x)...             break...     else:...         # loop fell through without finding a factor...         print(n, 'is a prime number')...2 is a prime number3 is a prime number4 equals 2 * 25 is a prime number6 equals 2 * 37 is a prime number8 equals 2 * 49 equals 3 * 3

10、continue 子句的用法跟在 C 語句中完全一樣

11、pass 語句什麼也不做,用於一個 block 在文法上需要一個語句,但是沒有必要執行任何操作時
>>> while True:...     pass  # Busy-wait for keyboard interrupt (Ctrl+C)...

12、pass 也可作為一個預留位置,允許你保持思考更抽象的層次
>>> def initlog(*args):...     pass   # Remember to implement this!...

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.