200 ? "200px" : this.width)!important;}
-->

介绍

在python中认为规定4个空格缩进,缩进的代码可以理解成一个块,但是使用缩进也需要注意有时不一样的缩进产生的结果会不一样,接下来就来看一个列子

 
 
一、for...in循环 
例:自定义一个函数 ,最后返回传入值的平方相加
def calc(numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
print (calc([1,2,4]))
上面的代码返回了正常在值:21
 
接下来把代码稍微改一下
def calc(numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
print (calc([1,2,4]))

现在返回的值又是什么呢:结果返回1

为什么会返回1,仔细分析一下,代码我将return进行了缩进,这时return是基于for的每一个循环返回一个值,并且return当第一个条件满足时就不在往下执行了,所以当传入第一个1时,sum=0+1*1=1,return 1就不再进行后面的循环了。而return不缩进那么return和for是同一级,当所有的for执行完后才执行return然后返回最终的结果

用将return替换成print更容易理解

def calc(numbers):
sum = 0
for n in numbers:
sum = sum + n * n
print (sum)
print (calc([1,2,4]))
21
None
>>>

而缩进print

def calc(numbers):
sum = 0
for n in numbers:
sum = sum + n * n
print (sum)
print (calc([1,2,4]))
1
5
21
None
>>>

由于prInt不像return不会满足条件就不往下执行,所以打印出了每一次循环的值。

二、if..else

在if..else条件判断中,一个块里面的语句都要保持缩进

def my_abs(x):
if x>=:
x=x-
return (x)
else:
x=x+

在这里return就必须缩进,如果和if保持一样的话会导致后面的else定义失败,因为if...elif..else需要保持一致缩进。

如果这样写就错了:

def my_abs(x):
if x>=:
x=x-
return (x)
else:
x=x+

由于return和if..else处于一样的缩进,导致else关联不上if

总结

使用缩进要明白每一行缩进的意义,否则返回的结果可能不是正确的结果

备注:

作者:pursuer.chen

博客:http://www.cnblogs.com/chenmh

本站点所有随笔都是原创,欢迎大家转载;但转载时必须注明文章来源,且在文章开头明显处给明链接。

《欢迎交流讨论》

最新文章

  1. git回滚错误提交
  2. 8421BCD码转换为十进制
  3. javascript 函数声明和函数表达式的区别(学习笔记)
  4. oracle对象类型
  5. 在C#使用文件监控对象FileSystemWatcher的几种方案
  6. VMWare Workstation:局域网PC连接虚拟机里的远程桌面或端口
  7. CodeForces 749D Leaving Auction
  8. mybatis实战教程二:多对一关联查询(一对多)
  9. SQL高级查询基础
  10. Servlet生命周期 和 继承关系
  11. Oracle 查询权限视图
  12. shell变量的使用及输入输出
  13. Spring中EmptyResultDataAccessException异常产生的原理及处理方法
  14. mvc 控制器忽略某些方法
  15. gogs 源码阅读笔记 001
  16. Bugly实现app全量更新
  17. Linux 下smi/mdio总线通信
  18. socket listen参数中的backlog
  19. 非抢占式RCU实现(一)
  20. Codeforces 914 C 数位DP+暴力打表+思维

热门文章

  1. win32 API 学习
  2. RAC 环境下修改归档模式
  3. 安卓 Dialogs(对话框)
  4. ajax url参数中文乱码解决
  5. C# 使用Linq递归查询数据库遇到的问题及解决方法
  6. Real Boxing 2
  7. linux 为开机菜单加密码·
  8. matlab 之基础使用
  9. 通知(Toast+Notification)
  10. Sunrise Release Version History