零基础学python-11.3 代码分隔符

程序代码的块结构

>>> def testIf(param):#测试if语句
	'这个函数测试if语句'
	print('函数开始')
	if param<1 :
		print("输入的数字小于1")
	elif 1<param<3 :
		print("输入的数字在1和3之间")
	else :
		print("输入的数字大于3")

	print('函数结束')

	
>>> testIf(0)
函数开始
输入的数字小于1
函数结束
>>> 

我们下面引入图形来解释上面的代码


嵌套块代码:一个嵌套块以再往右缩进的语句开始,碰到缩进量较少的语句或文件末尾时就结束

这个的函数包含3个模块,最顶层是函数名,跟着是跟随print和if,最后就是if里面的执行模块

>>> def testIf(param):#测试if语句
	'这个函数测试if语句'
	print('函数开始')
	if param<1 :
		print("输入的数字小于1")
	elif 1<param<3 :
		print("输入的数字在1和3之间")
	else :
		print("输入的数字大于3")

print('函数结束')
SyntaxError: invalid syntax
>>> 
当程序缩进错误的时候,一般都会有提示,就像上面的,但是,有些时候却不会,而且会造成逻辑上面的问题

请认真对比下面两个例子:(主要差别在于param大于3的时候)

>>> def testIf(param):#测试if语句
	'这个函数测试if语句'
	print('函数开始')
	if param<1 :
		print("输入的数字小于1")
	elif 1<param<3 :
		print("输入的数字在1和3之间")
	else :
		print("输入的数字大于3")
		print(param)#我们原来的函数是这样的
	print('函数结束')

	
>>> testIf(4)
函数开始
输入的数字大于3
4
函数结束
>>> 

上面的例子我举出正确逻辑,当大于3的时候打印输入数字,我们下面举一个由于缩进而造成的逻辑错误,而且是不报错的

>>> def testIf(param):#测试if语句
	'这个函数测试if语句'
	print('函数开始')
	if param<1 :
		print("输入的数字小于1")
	elif 1<param<3 :
		print("输入的数字在1和3之间")
	else :
		print("输入的数字大于3")
	print(param)#这里由于手误,没有缩进
	print('函数结束')

	
>>> testIf(4)
函数开始
输入的数字大于3
4
函数结束
>>> testIf(1)
函数开始
输入的数字大于3
1
函数结束
>>> 

由于手误,没有缩进,所以造成函数的逻辑错误,而且是不报错的逻辑错误

本来我们想着的是大于3的情况才打印,但是现在无论输入什么都打印出来,所以大家对于缩进一定需要认真注意


最后,就是需要主要制表符与空格,我们需要避免同时使用,在python3.x里面就加上了这样的报错

>>> def testIf(param):#测试if语句
	'这个函数测试if语句'
        print('函数开始')#print的前面全是空格
	if param<1 :
		print("输入的数字小于1")
	elif 1<param<3 :
		print("输入的数字在1和3之间")
	else :
		print("输入的数字大于3")
	print(param)
	print('函数结束')
	
SyntaxError: inconsistent use of tabs and spaces in indentation
>>> 

就说到这里,谢谢大家

------------------------------------------------------------------

点击跳转零基础学python-目录



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值