## 顺序结构
  - 按照从上到下的顺序,一条语句一条语句的执行,是最基本的结构

## 分支结构
  if condition:
    statement
    statement
    ...
  elif condition>:  
    statement
    statement
    ...
  else:
    statement
    statement
    ...
  - if 语句可以嵌套,但不推荐, 尽量保持代码简洁
  - Python没有switch-case语句
  - Python条件语句允许下列写法
    x = 10
    print(1 < x < 20) # -> True
    print(1 < x < 20 < 100) # -> True
  - 以下数据将被判定为False:
    False、None、0、0.0、""、[]、()、{}、set()

## 循环结构
  - 写循环程序时需要注意循环变量的初值,循环条件和循环变量的增量,三者共称为循环三要素
  - while循环
    count = 0 # -> 循环变量
    while count < 5: # -> 循环条件
    print(count, end=",") # -> 0,1,2,3,4,
    count += 1 # -> 循环变量的增量,对循环变量进行修改

  - for迭代
    - 在C或者Java等语言中,for循环将循环三要素结合在一行语句中:大概如下:
      for(int i = 0; i < 10; i++){循环体}
    - 但Python中的for循环相对而言更加简洁
      words = ["and", "or", "not"]
      for word in words:
        print(word, end=", ") # -> and, or, not,
    - 列表、元组、字典、集合、字符串都是可以迭代的对象

  - 对字典的迭代可以:
    a_dict = {"name": "Stanley", "age": "22"}
    for k, v in a_dict.items():
      print("{0}: {1}".format(k, v))
    # -> name: Stanley
      age: 22
  - 单独迭代字典的key或者value可以使用字典的keys()或values()函数

  - break关键字
    - 在循环体中使用break关键字,整个循环会立刻无条件停止
      count = 0
      while count < 5:
        if count == 2:
          break
        print(count, end=" ")
        count += 1

      # -> 0 1

      # -> 由于当count等于2时,进入if语句执行了break,所以循环结束,未完成的循环不再执行

  - continue关键字
    - 在循环体中使用continue关键字,此次循环无条件体停止,执行之后的循环

      for i in range(0, 5):
        if i == 2:
          continue
        print(i, end=" ")
      # -> 0 1 3 4
      # -> 当i等于2时进入if语句,执行continue,本次循环跳过,进入下一循环

  - 与循环一起使用else
    for i in range(0, 5):
      print(i, end=" ")
    else:
      print("循环结束")
    # -> 0 1 2 3 4 循环结束
    - 当循环完全结束后(不被break和cuntinue打断)执行else中的代码
    - else同样适用于while循环

  - 使用zip()并行迭代
    numbers = [1, 2, 3, 4]
    words = ["one", "two", "three", "four"]
    days = ["Mon.", "Tues.", "Wed.", "Thur."]
    for number, word, day in zip(numbers, words, days):
      print(number, word, day)
  输出:
    1 one Mon.
    2 two Tues.
    3 three Wed.
    4 four Thur.
  - zip()函数在长度最小的参数中的元素用完后自动停止,其他参数未使用的元素将被略去,除非手动扩展其他较短的参数长度
  - zip()函数的返回值不是列表或元组,而是一个整合在一起的可迭代变量
    list(zip(words, days))
    # -> [('one', 'Mon.'), ('two', 'Tues.'), ('three', 'Wed.'), ('four', 'Thur.')]

本文参考书籍:[美]Bill Lubanovic 《Python语言及其应用》

Python代码结构——顺序、分支、循环的更多相关文章

  1. 第十九节:Java基本数据类型,循环结构与分支循环

    基本数据类型 Java中的基本数据类型,有8种,在Java中有四种类型,8种基本数据类型. 字节 boolean 布尔型为1/8 byte 字节类型为1 short 短整型为2 char 字符型为2 ...

  2. Emu8086三种格式的代码-(顺序,分支,循环)

    这个学期准备考研,于是就没有怎么听别的课,现在临近期末,汇编成了个难题.下面是我学校的实验报告 做一个复习的记录吧,下面的代码都是在Emu8086上运行出来的代码 下面先介绍一下,汇编里面的格式问题 ...

  3. Day6 三种结构 顺序选择循环!

    顺序结构 从上到下依次执行,它是任何算法都离不开的一种基本算法结构. package com.xiaoming.struct;​public class ShunXuDemo {    public ...

  4. 【Learning Python】【第四章】Python代码结构(一)

    这一章的主旨在于介绍python的代码结构 缩进 在很多的编程语言中,一般{}用于控制代码块,比如以下的一段C代码 if(var <= 10) { printf("....." ...

  5. python 代码执行顺序

    Python代码在执行过程中,遵循下面的基本原则: 普通语句,直接执行: 碰到函数,将函数体载入内存,并不直接执行 碰到类,执行类内部的普通语句,但是类的方法只载入,不执行 碰到if.for等控制语句 ...

  6. Python代码的人机大战(循环嵌套)

    第一次动手写随笔,记录一下今早的1.5小时努力成果 题目是这样的 : 人和机器进行猜拳游戏写成一个类,首先选择角色:1 曹操 2张飞 3 刘备,然后选择的角色进行猜拳:1剪刀 2石头 3布 玩家输入一 ...

  7. python代码结构

    1. 使用#单行注释,使用'''...'''多行注释 2. 使用连接符\来把一行过长的代码分为多行 3. 用缩进来控制代码块,推荐使用PEP8缩进风格,即四个空格 4. if ...: elif... ...

  8. python语句结构(while循环)

    while循环 pythhon中while语句的一般形式 while 判断语句: 执行语句 i=0 sum=0 while i<=100: sum+=i i=i+1 print(sum) #运行 ...

  9. Python基础-python流程控制之顺序结构和分支结构(五)

    流程控制 流程:计算机执行代码的顺序,就是流程 流程控制:对计算机代码执行顺序的控制,就是流程控制 流程分类:顺序结构.选择结构(分支结构).循环结构 顺序结构 一种代码自上而下执行的结构,是pyth ...

随机推荐

  1. jquery validation yyyy-MM-dd格式日期在ie中无法验证通过

    自己开发的公众号,可以领取淘宝内部优惠券 问题 首先在ie6.7.8下面打开这个页面http://jqueryvalidation.org/date-method/,输入的日期格式为:yyyy-MM- ...

  2. 对数组排序进行"洗牌"(随机排序)

    这段代码在这里使用Fisher Yates洗牌算法给一个指定的数组进行洗牌(随机排序). function shuffle(arr) {     var i,        j,        tem ...

  3. oracle多表查询和子查询练习

    --1.列出至少有三个员工的所有部门和部门信息. SELECT D.DEPTNO, D.DNAME, D.LOC, T.COUNTS   FROM DEPT D, (SELECT DEPTNO, CO ...

  4. jquery-validate插件

    jQuery Validation 插件 优点:1.表单验证非常简单方便,并且提供了许多配置项目2.国际化,可以自定义提示信息 命令行安装 //初始化bowerbower init //使用bower ...

  5. ListView优化的时候ViewHolder的简洁写法

    在ListVIew做复用优化的时候,经常会写ViewHolder,还需要很麻烦的去findview,我最讨厌写一堆的这样代码了,今天看到了一个极简的写法,很好用,很简洁啊!!! public stat ...

  6. Cocos2d-x下HTTP网络通讯

    引入头文件: #include "cocos-ext.h" 添加下载按钮: CCMenuItemImage *pCloseItem = CCMenuItemImage::creat ...

  7. time和datetime模块

    在Python中,通常有这几种方式来表示时间: 1)时间戳 2)格式化的时间字符串  3)元组(struct_time)共九个元素. 由于Python的time模块实现主要调用C库,所以各个平台可能有 ...

  8. php 编译安装指导

    php 编译安装 下载源码 安装 安装后配置 下载源码 php下载地址:http://php.net/downloads.php php-7.1.11.tar.bz2 安装 安装依赖包 yum ins ...

  9. 异常处理 try...catch...finally 执行顺序, 以及对返回值得影响

    异常处理 try...catch...finally 执行顺序, 以及对返回值得影响 结论:1.不管有没有出现异常,finally块中代码都会执行:2.当try和catch中有return时,fina ...

  10. MySQL的四种主要存储引擎

    在数据库中存的就是一张张有着千丝万缕关系的表,所以表设计的好坏,将直接影响着整个数据库.而在设计表的时候,我们都会关注一个问题,使用什么存储引擎.等一下,存储引擎?什么是存储引擎? 什么是存储引擎? ...