當(dāng)前位置:
首頁 >
17.丰富的else语句和简洁的with语句
發(fā)布時(shí)間:2025/3/21
51
豆豆
生活随笔
收集整理的這篇文章主要介紹了
17.丰富的else语句和简洁的with语句
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
豐富的else語句
要么怎樣,要么不怎樣:if...else... 干完了能怎樣,干不完就別想怎樣 沒有問題,那就干吧一、要么怎樣,要么不怎樣
常見的if...else...語法=====
二、干完了能怎樣,干不完就別想怎樣
例1:while與else之間的break
判斷一個(gè)數(shù)是素?cái)?shù)還是合數(shù),如果是合數(shù),則求出 合數(shù)的最大約數(shù)。 自己求解: def func(num):k = num //2 #板除,結(jié)果肯定是整數(shù)if(k<1): #如果k是1,2,3,那么肯定是素?cái)?shù),否則進(jìn)入下面的判斷print '%d是素?cái)?shù)' % numelse:while(k != 1):if(num % k == 0):print '%d是合數(shù),它的最大約數(shù)是%d' % (num,k)breakk = k - 1else:print '%d是素?cái)?shù)' % num>>> func(3) 3是素?cái)?shù) >>> func(30) 30是合數(shù),它的最大約數(shù)是15正規(guī)求解: def func(num):k = num // 2while( k > 1 ):if num % k == 0:print ('%d是合數(shù),它的最大約數(shù)是:%d' % (num,k))breakelse:k -= 1else:print ('%d是素?cái)?shù)' % num)>>> func(2) 2是素?cái)?shù) >>> func(30) 30是合數(shù),它的最大約數(shù)是:15【重點(diǎn)解釋:嶄新的知識(shí)點(diǎn)】 如果while中,break執(zhí)行,則不執(zhí)行else語句中的內(nèi)容; 如果while循環(huán)正常退出,則執(zhí)行else語句中的內(nèi)容。break跳出范圍是while循環(huán),連帶while...else...語句一并跳出。 因此break跳出后,不會(huì)執(zhí)行else語句中的內(nèi)容。例1:for與else之間的break
【注解】for...else...與while...else...用法和含義完全相同===
三、沒有問題,那就干吧
說明:與第二種形式類似,它是與try語句進(jìn)行搭配的, 即只要try語句中沒有發(fā)生異常,就會(huì)執(zhí)行else語句中的內(nèi)容。例1: def f1():try:int('show') #把字符串強(qiáng)制轉(zhuǎn)為int,會(huì)發(fā)生ValueError 異常except ValueError as reason:print('出錯(cuò)了:'+str(reason))else:print('沒有任何異常')>>> f1() 出錯(cuò)了:invalid literal for int() with base 10: 'show' 【注解】在try語句中,如果發(fā)生異常,就不會(huì)執(zhí)行try...else... 后面的else語句中的內(nèi)容。例2: def ff():try:print('show') #直接打印字符串,不會(huì)發(fā)生異常except ValueError as reason:print('出錯(cuò)了:'+str(reason))else:print('沒有任何異常')>>> ff() show 沒有任何異常 【注解】在try語句中,如果不發(fā)生異常,就會(huì)執(zhí)行try...else... 后面的else語句中的內(nèi)容。+++++++++++++++
+++++++++++++++
+++++++++++++++
+++++++++++++++
簡(jiǎn)潔的with語句:用于文件操作
http://www.cnblogs.com/ymjyqsx/p/6554817.html
方法一:以前的學(xué)習(xí)我們常用的文件打開方式 try:f = open('', '')print(f.read()) finally:if f:f.close()【注解】上面的形式太繁瑣,不但有try異常處理機(jī)制,還有 f.close()語句。因此我們引出下面的語法方法二: with open('','') as f:print(f.read())這和前面的try ... finally是一樣的,但是代碼更佳簡(jiǎn)潔,并且不必調(diào)用f.close()方法。總結(jié)
以上是生活随笔為你收集整理的17.丰富的else语句和简洁的with语句的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1.VMware安装3个ubuntu14
- 下一篇: 18.图像用户界面入门:EasyGui