Python迴圈語句中else的用法總結

2023-03-19 01:10:39 字數 2054 閱讀 6304

前言

本文討論python的for…else和while…else等語法,這些是python中最不常用、最為誤解的語法特性之一。

python中的for、while等迴圈都有一個可選的else分支(類似if語句和try語句那樣),程式設計客棧在迴圈迭代正常完成之後執行。換句話說,如果我們不是以除正常方式以外的其他任意方式退出迴圈,那麼else分支將被執行。也就是在迴圈體內沒有break語句、沒有return語句,或者沒有異常出現。

下面我們來看看詳細的使用例項。

一、 常規的 if else 用法

x = true

if x:

print 'x is true'

else:

print 'x is not true'

二、if else 快捷用法

這裡的if else可以作為三元操作符使用。

mark = 40

is_pass = true if mark >= 50 else false

print "pass? " + str(is_pass)

三、與 for 關鍵字一起用

在滿足以下情況的時候,else下的**塊會被執行:

1、for迴圈裡的語句執行完成

www.cppcns.com;    2、for迴圈裡的語句沒有被break語句打斷

# 列印 `for loop completed the execution`

for i in range(10):

print i

else:

print 'for loop completed the execution'

# 不列印 `for loop completed the execution`

for i in range(10):

print i

if i == 5:

break

else:

print 'for loop completed the execution'

四、與 while 關鍵字一起用

和上面類似,在滿足以下情況的時候,else下的**塊會被執行:

1、while迴圈裡的語句執行完成

2、while迴圈裡的語句沒有被break語句打斷

# 列印 `while loop execution completed`

a = 0

loop = 0

while a <= 10:

print a

loop += 1

a + 1

else:

print "while loop execution completed"

# 不列印 `while loop execution completed`

a = 50

loop = 0

while a > 10:

pri程式設計客棧nt a

if loop == 5:

break

a += 1

loop += 1

else:

print "while loop execution completed"

五、與 try except 一起用

和try except一起使用時,如果不丟擲異常,else裡的語句就能被執行。

file_name = "result.txt"

try:

f = open(file_name, 'r')

except ioerror:

print 'cannot open', file_name

else:

# executes only if file opened properly

print file_name, 'has', len(f.readlines()), 'lines'

f.close()

總結關於python中迴圈語句中else的用法總結到這就基本結束了,這篇文章對於大家學習或者使用程式設計客棧python還是具有一定的參考借鑑價值的,希望對大家能有所幫助,如果有疑問大家可以留言交流。

本文標題: python迴圈語句中else的用法總結

本文地址:

Python 迴圈語句中的 else 子句

python 迴圈語句中的 else 子句 有其它程式語言經驗的程式設計師接觸到 python 時最訝異的莫過於無所不在的 else,不僅分枝語句有,而且迴圈語句也有,甚至連異常處理也有。但現在我們來看看迴圈語句中的 else,看看它們的語法 while stmt while expression ...

Python 迴圈語句中的 else 子句

python 迴圈語句中的 else 子句 有其它程式語言經驗的程式設計師接觸到 python 時最訝異的莫過於無所不在的 else,不僅分枝語句有,而且迴圈語句也有,甚至連異常處理也有。但現在我們來看看迴圈語句中的 else,看看它們的語法 while stmt while expression ...

python迴圈中使用else語句

本文以for else語句說明python迴圈使用else語句的用法,while else語句相同。說明 for 中的語句和普通的沒有區別,else 中的語句會在迴圈正常執行完的情況下執行,如果提前跳出for迴圈 例如使用break語句 時,則也會跳出else語句。相當於for else作為一個整體...

Python中迴圈語句中的else用法

本文討論python的for else和while else語法,這是python中最不常用 最為誤解的語法特性之一。python中的for while迴圈都有一個可選的else分支 類似if語句和try語句那樣 在迴圈迭代正常完成之後執行。換句話說,如果我們不是以除正常方式以外的其他任意方式退出迴...

Python迴圈結構中else用法(入門必讀)

python 的迴圈都可以定義 else 塊,當迴圈條件為 false 時,程式會執行 else 塊。如下 示範了為 while 迴圈定義 else 塊 count i 0 while count i 5 print count i小於5 count i count i 1 else print c...

Python入門14 迴圈的else的使用

迴圈可以和else配合使用,else下方縮排的 指的是當迴圈正常結束之後要執行的 while 條件 條件成立重複執行的 else 迴圈正常結束之後要執行的 i 1while i 5 print f 抄寫經書第遍 i 1else print 終於抄完了,累死啦 列印結果 抄寫經書第1遍 抄寫經書第2遍...

Python迴圈結構中else用法(入門必讀)

python 中,無論是 while 迴圈還是 for 迴圈,其後都可以緊跟著一個 else 塊,它的作用是當迴圈條件為 false 跳出迴圈時,程式會最先執行 else 塊中的 以 while 迴圈為例,下面程式演示瞭如何為 while 迴圈新增一個 else 塊 add hello world ...

迴圈語句中continue使用(JAVA)

今天想到continue的使用,發現自己都不太熟,所以找一些資料。發現continue可以合理充當 goto 語句使用。continue可以跳出當前迴圈,繼續下次迴圈。break就跳出當前迴圈,就不執行下次迴圈。如果加了label之後就可以實現 goto 語句功能。break語句就不寫了,同樣的大同...

關於return在迴圈語句中的使用

public void f1 public int f2 對於f1 執行是ok的,但是對於f2 執行是錯誤,為什麼?首先對於返回值型別為void的方法中,該方法的最後一句有預設的 return 即終止方法,並返回!對於f2 乍一眼看過去,應該是正確的,為何編譯時發現是錯誤的!終究原因還是 該方法不一...

Python 迴圈外使用else

今天看python求素數有沒有什麼快速求法,結果發現了python的一個語法小技巧 迴圈外使用else。例如下面這段求素數的 for x in range 2 101 for y in range 2 x if x y 0 break else print x 一開始我以為是不是別人寫錯了,這if和...