一般语言一样采用{}或者begin...end分隔代码块,而是python中,采用代码缩进和冒号来区分代码之间的层次。

缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

有时候代码采用,合理的缩进但是缩进的情况不同,代码的执行结果也不同。有相同的缩进的代码表示这些代码属于同一代码块。

例如:

1
2
3
4
5
6
7
8
9
10
11
12
# -*- coding: UTF-8 -*-
if True:
  print("Hello girl!")
else:
  print("Hello boy!")
print("end")
print("=========华丽的分割线===========")
if True:
  print("Hello girl!")
else:
  print("Hello boy!")
  print("end")

运行结果:

分割线以上的print("end")未缩进与if对齐,因此它与if属于同一代码块,执行完if的操作,执行输出。

分割线一下的print("end")与print("Hello boy!")保持一致的缩进,则它与print("Hello boy!")属于else之内的代码块。

 缩进相同的一组语句构成一个代码块,我们称之代码组。

if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。

我们将首行及后面的代码组称为一个子句(clause)

Python多行语句

Python语句中一般以新行作为为语句的结束符。但是我们可以使用斜杠( \)将一行的语句分为多行显示。

1
2
3
4
5
6
7
num1 = 1
num2 = 2
num3 = 3
total = num1 + \
num2 + \
num3
print("total is : %d"%total)

语句中包含[], {} 或 () 括号就不需要使用多行连接符

1
2
3
days = ['Monday', 'Tuesday', 'Wednesday',
    'Thursday', 'Friday']
print(days)

Python代码中一行只能有一个语句,以新行作为为语句的结束符。如果一行含有多个语句将会抛出异常。

该种方式完全是像java在声明变量呀。

Python2中貌似可以用分号分隔,我机器上没有装2.x没有试,亲测Python3下不可以。

正解如下:

1
2
3
4
5
num1,num2,num3 =1,2,3
total = num1 + \
num2 + \
num3
print("total is : %d"%total)

Python空行

函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。

空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。

记住:空行也是程序代码的一部分。

python的代码缩进和冒号的更多相关文章

  1. Python 坑爹之 代码缩进

    建议:统一使用空格!!!!!!!!!不要Tab Python代码缩进   这两天python-cn邮件列表有一条thread发展的特别长,题目是<python的代码缩进真是坑爹>(地址), ...

  2. 代码块: 以冒号作为开始,用缩进来划分作用域,这个整体叫做代码块,python的代码块可以提升整体的整齐度,提高开发效率

    # ### 代码块: 以冒号作为开始,用缩进来划分作用域,这个整体叫做代码块 if 5 == 5: print(1) print(2) if True: print(3) print(4) if Fa ...

  3. python 控制语句基础---->代码块:以为冒号作为开始,用缩进来划分作用域,代表一个整体,是一个代码块,一个文件(模块)也称为一个代码块 | 作用域:作用的范围

    # ### 代码块:以为冒号作为开始,用缩进来划分作用域,代表一个整体,是一个代码块,一个文件(模块)也称为一个代码块 # ### 作用域:作用的范围 print(11) print(12) prin ...

  4. Python代码缩进与测试模块

    一.Python代码缩进 Python 函数没有明显的  begin 和  end ,没有标明函数的开始和结束的花括号.唯一的分隔符是一个冒号 ( : ),接着代码本身是缩进的. 例如:缩进  bui ...

  5. python基础(代码规范、命名规范、代码缩进、注释)

    代码规范 PEP8(python增强建议书第8版) 每个import语句只导入一个模块 不要在行尾添加分号";" 建议每行不超过80个字符   超出部分可以用()来进行换行例如: ...

  6. python代码缩进

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

  7. python的代码块和if条件表达式

    代码块和if条件表达式 代码块 什么是代码块 以冒号作为开始,用缩进来划分作用域. 在之后的学习当中,使用if条件语句.for.while循环语句.定义函数.定义类等诸多地方都会涵盖代码的概念. 什么 ...

  8. Python入门-行和缩进

    学习Python与其他语言最大的区别就是,Python的代码块不使用大括号({})来控制类,函数以及其他逻辑判断.python最具特色的就是用缩进来写模块. 缩进的空白数量是可变的,但是所有代码块语句 ...

  9. Python IDLE 代码高亮主题

    Python IDLE 代码高亮主题 使用方法: 打开C盘我的 C:\Documents and Settings\你的用户名.idlerc文件夹 里面会有一个 config-highlight.cf ...

随机推荐

  1. 【转】苹果App Store审核指南中文翻译(更新)

    (注:<苹果应用商店审核指南>中文翻译最近一次更新为2013-03-04,文中红色部分是相对于2013-03-04版本的新增内容,绿色部分代表更改的内容,蓝色表示苹果相关官方文档的链接.) ...

  2. 书记查询的App设计

    表示学习Andriod没有头绪,看书看着看着都觉得大部分是些item的介绍,看过去之后会完全忘记,还是自己做个小东西进行实际开发学习和掌握起来会比较快. PC端的软件已经做好,当然因为PC屏幕较大,手 ...

  3. springboot本地读取resources/images没问题,上传到云服务器打成jar包就读取不到问题

    //String watermarkfileName = this.getClass().getClassLoader().getResource("images/watermark.png ...

  4. 判断Android 当前版本是否为debug版本

    public static boolean isDebugVersion(Context context) { try { ApplicationInfo info = context.getAppl ...

  5. SNF快速开发平台MVC-各种级联绑定方式,演示样例程序(包含表单和表格控件)

    做了这么多项目,经常会使用到级联.联动的情况. 如:省.市.县.区.一级分类.二级分类.三级分类.仓库.货位. 方式:有表单需要做级联的,还是表格行上需要做级联操作的. 实现:实现方法也有很多种方式. ...

  6. HTTP Status 500 - Unable to create directory

    分析原因: 例如:java web项目 上传图片创建文件夹cd /data/apps/static-web/sjk/driver/attachment/编号/文件名称.jpg 在创建文件目录 /dat ...

  7. 小米手机安装mitmproxy证书

    [本文出自天外归云的博客园] 问题描述 小米手机在连接mitmproxy代理后通过浏览器访问mitm.it下载android证书后无法成功安装证书 设备:Redmi Note 2(红米手机) 解决方法 ...

  8. Git的使用(一)

    最近在解除git的使用,开始觉得git某些地方还是挺方便的. 1.svn的话管理起来是比较方便,可是断网的话,会用不了 2.git的话,管理一些开源的东西比较方便,并且比较好管理日常写的demo程序, ...

  9. 【iCore4 双核心板_ARM】例程二十一:LWIP_TCP_SERVER实验——以太网数据传输

    实验现象: 核心代码: int main(void) { system_clock.initialize(); led.initialize(); adc.initialize(); delay.in ...

  10. python 简单的server请求

    1.代码 #!/usr/bin/env python3 # -*- coding: utf-8 -*- # __author henry # __date 2018/11/4 from wsgiref ...