python中pass与break区别

刚刚敲代码时用了一段自创小代码明确了其中区别,记录一下。
为了方便理解,我将其放入一段for循环中。首先来看break,下面这段程序输出结果是什么?

aadict={‘A’:0,‘G’:0,‘V’:0,‘I’:1,‘L’:1,‘F’:1,‘P’:1}
e=[‘A’,‘X’,‘P’]
b=’’

for i in range(3):
	try:
		print(e[i])
    	nonum=str(aadict[e[i]])
    	b+=nonum
    	print(b)
	except KeyError:
    	b='nothing'
    	break
print(b)

##下面为输出结果
A
0
X##发现一个小东西:try语句走到一般返回KeyError后才进入except~~
nothing

break语句的专业解释为:‘break语句是导致从循环体任意位置退出的语句’.
从上述程序可以看出,i=0时,b=‘0’,当i=1时,进入except KeyError,‘nothing’赋值给变量b后,执行break,即’从循环体中跳出‘,直接print(b)。
下面再来看pass语句。

aadict={‘A’:0,‘G’:0,‘V’:0,‘I’:1,‘L’:1,‘F’:1,‘P’:1}
e=[‘A’,‘X’,‘P’]
b=’’

for i in range(3):
	try:
		print(e[i])
    	nonum=str(aadict[e[i]])
    	b+=nonum
    	print(b)
	except KeyError:
    	b='nothing'
    	pass#仅将上述程序中break改为pass
print(b)

##下面为输出结果
A
0
X
P
nothing1
nothing1

pass语句的专业解释为:‘pass 不做任何事情,一般用做占位语句,是为了保持程序结构的完整性。’也就是说,pass语句什么都不是‘,与break的区别是,pass不跳出循环。
如果理解清除了,在通过下面这段程序检测一下?

aadict={‘A’:0,‘G’:0,‘V’:0,‘I’:1,‘L’:1,‘F’:1,‘P’:1}
e=[‘A’,‘X’,‘P’]
b=’’

for i in range(3):
	try:
		print(e[i])
    	nonum=str(aadict[e[i]])
    	b+=nonum
    	print(b)
	except KeyError:
    	pass#将该行和下行命令行颠倒
    	b='nothing'
print(b)

##下面为输出结果

A
0
X
P
nothing1##因为pass语句’什么都不是’,所以该给b赋值还是得赋呀
nothing1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值