习惯了java,c++之类的宽容,初学python,被它摆了道下马威,写if else,竟然必须要我正确用缩进格式,原来在python里不能用括号来表示语句块,也不能用开始/结束标志符来表示,而是靠缩进来表示,好吧,我以后多注意

空白在Python中是重要的。事实上行首的空白是重要的。它称为缩进。在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组。

这意味着同一层次的语句必须有相同的缩进。每一组这样的语句称为一个块。我们将在后面的章节中看到有关块的用处的例子。

你需要记住的一样东西是错误的缩进会引发错误。例如:

i = 5

print 'Value is', i # Error! Notice a single space at the start of the line

print 'I repeat, the value is', i

当你运行这个程序的时候,你会得到下面的错误:

File "whitespace.py", line 4

print 'Value is', i # Error! Notice a single space at the start of the line

^

SyntaxError: invalid syntax

注意,在第二行的行首有一个空格。Python指示的这个错误告诉我们程序的语法是无效的,即程序没有正确地编写。它告诉你, 你不能随意地开始新的语句块 (当然除了你一直在使用的主块)。何时你能够使用新块,将会在后面的章节,如控制流中详细介绍。

如何缩进

不要混合使用制表符和空格来缩进,因为这在跨越不同的平台的时候,无法正常工作。我 强烈建议 你在每个缩进层次使用 单个制表符 或 两个或四个空格 。

选择这三种缩进风格之一。更加重要的是,选择一种风格,然后一贯地使用它,即 只 使用这一种风格。

Python的缩进应该是一个优点,刚开始可能不是非常的习惯,慢慢就行了!

当你看别人的Python代码的时候,你就会深切感受到缩进的好处。

另外,Python的缩进可以在一定程度上防止大量的代码堆积在一起,客观上促使形成良好的代码风格

Py的哲学同Perl/ruby的不同。它不会给你很多功能,然后警告你说,这个这个最好别用,那个那个得注意了。它认为凡是它提供给你的,都是给你用的,只要符合它的语法规范,随便怎么用都可以。如果你能写出烂代码,那说明这个设计有问题。这是一种负责任的态度。

{} 可以允许程序员写出很烂的代码,而这与Py的哲学不符。所以Py在设计之处就规定,用缩进而不是{}表示程序块。

这并没有什么不好的,在绝大多数情况下,缩进比{}更清楚。

但是Py的缩进也不是无往不利的。个人感觉有两个地方不方便。

第一,粘贴代码的时候修改缩进不方便。但好在我有vi。

第二,html嵌套py代码的时候,要同时维护两套缩进,html的和py的。这个太困难了。我觉得这是妨碍PSP流行的最重要的原因。

python中缩进在程序中_python代码缩进相关推荐

  1. python缩进在程序中长度统一且强制使用_Python习题纠错1

    February, 1991 0.9.1 2.Python语言的缩进只要统一即可,不一定是4个空格(尽管这是惯例). Python缩进在程序中长度统一且强制使用. 3.IPO:Input Proces ...

  2. python基础代码事例-Python简单基础小程序的实例代码

    1 九九乘法表 for i in range(9):#从0循环到8 i += 1#等价于 i = i+1 for j in range(i):#从0循环到i j += 1 print(j,'*',i, ...

  3. python程序实例教程基础-Python简单基础小程序的实例代码

    1 九九乘法表 for i in range(9):#从0循环到8 i += 1#等价于 i = i+1 for j in range(i):#从0循环到i j += 1 print(j,'*',i, ...

  4. python经典程序实例-Python简单基础小程序的实例代码

    1 九九乘法表 for i in range(9):#从0循环到8 i += 1#等价于 i = i+1 for j in range(i):#从0循环到i j += 1 print(j,'*',i, ...

  5. python简单程序实例-Python简单基础小程序的实例代码

    1 九九乘法表 for i in range(9):#从0循环到8 i += 1#等价于 i = i+1 for j in range(i):#从0循环到i j += 1 print(j,'*',i, ...

  6. java基础代码实例_全网都在找的Python简单基础小程序的实例代码

    这篇文章主要介绍了Python简单基础小程序的实例代码,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下. 1 九九乘法表 3 4 5 6 7for i in range(9):#从0循环到8 ...

  7. python实现录音小程序 界面_python怎么对矩阵添加一列python实现录音小程序

    本文为大家分享了python实现录音小程序的具体代码,供大家参考,具体内容如下 学习目标: 学习电脑网从python实现录音小程序分析来看,对python实现录音小程序的结果.掌握python的pya ...

  8. python基础编程:Python简单基础小程序的实例代码

    这篇文章主要介绍了Python简单基础小程序的实例代码,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下 1 九九乘法表 for i in range(9):#从0循环到8i += 1#等价于 ...

  9. python抽奖简单小程序游戏_python实现抽奖小程序

    本文实例为大家分享了python实现抽奖小程序的具体代码,供大家参考,具体内容如下 设计一个抽奖服务 背景:有x个奖品,要求在y天内发完:每天至少发放z个奖品:每天抽奖人数不定,事先会假设一个范围是m ...

  10. python中意外缩进是什么意思_Python 的缩进是不是反人类的设计?

    前些天,我写了<Python为什么使用缩进来划分代码块?>,文中详细梳理了 Python 采用缩进语法的 8 大原因.我极其喜欢这种简洁优雅的风格,所以对它赞美有加. 然而文章发出去后,非 ...

最新文章

  1. 24张GIF图,让你秒懂非标自动化机构的原理
  2. 服务器托管租用商考虑什么
  3. github创建项目,并提交本地文件
  4. 对计算机技术的发展方向研究,网络技术发展对计算机技术的影响
  5. SSH项目中遇到拦截器无法注入服务的问题
  6. Apache Shiro第2部分–领域,数据库和PGP证书
  7. ArcGIS之GP服务发布
  8. C# 结合 PInvoke 对接 IP 摄像头的笔记
  9. 将20180608141920转成date格式
  10. 6年专注,只因热爱——方创广告设计
  11. 圆通问题频发背后的“罪与罚”
  12. python实现汉诺塔递归算法超详细过程
  13. 感冒会引发腺样体肥大吗?
  14. Office 2010安装1402错误
  15. 2022年全新PHP程序开发在线工单管理系统源码,售后工单系统
  16. 简单三招,设计复杂ERP报表
  17. 站在智慧医院的制高点 阜外华中心血管病医院探索数字化融合实践
  18. 操作系统1(OS,operating system)
  19. Java高级框架——Spring学习
  20. 2022-08-18 mysql/stonedb-aggregate场景group by分析

热门文章

  1. python爬电影_使用Python多线程爬虫爬取电影天堂资源
  2. lan交换和无线教师手册_简单几步,无线路由器变交换机
  3. MIP改造常见问题二十问
  4. 这一年多来,阿里Blink测试体系如何从0走向成熟?
  5. console 速查手册
  6. Springboot 整合 swagger
  7. 3- OpenCV+TensorFlow 入门人工智能图像处理-TensorFlow入门
  8. Android (cocos2dx 网络访问)访问权限设置
  9. project设置6天工作制日历
  10. 机器学习算法平台alink_Alink漫谈(十二) :在线学习算法FTRL 之 整体设计