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

## 分支结构
  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. SQL简单语句(增删改查)

    简单的SQL语句增删改查操作 说明: 在mysql里面亲测结果正确    用到的表(学生表:studnets) 1.创建一个学生表,(学号,姓名,性别,家庭住址) mysql> create t ...

  2. webpack打包将配置文件单独抽离不压缩打包

    webpack.config.js: plugins: [ //提取公共模块 new webpack.optimize.CommonsChunkPlugin({ name: 'vendors', ch ...

  3. 关于使用Github,gitignore不起作用的解决方法

      直接上解决方法: 1 2 3 git rm -r --cached . git add . git commit -m 'update .gitignore' 解释: .gitignore文件,具 ...

  4. canvas制作雪花效果

    <!DOCTYPE html><html> <head>    <meta http-equiv="Content-type" conte ...

  5. Mat转化为IplImage类型的方法

    Mat image_mat; IplImage imgTmp = image_mat; IplImage *img = cvCloneImage(&imgTmp);

  6. django rest framework 详解

    Django REST framework 是用于构建Web API 的强大而灵活的工具包. 我们可能想使用REST框架的一些原因: Web浏览API对于开发人员来说是一个巨大的可用性. 认证策略包括 ...

  7. 开源时序服务器influxdb使用

    文档 https://influxdb.com/docs/v0.9/introduction/overview.html 配置文件 /etc/opt/influxdb/influxdb.conf re ...

  8. ubuntu查看nvidia显卡状态

    nvidia-smi 连续查看显卡状态 sudo watch nvidia-smi

  9. April 25 2017 Week 17 Tuesday

    Have you ever known the theory of chocie? There are a bunch of axiems, but there are only two thing ...

  10. MySQL数据库实验六:存储过程建立与调用

    实验六  存储过程建立与调用 一.实验目的 理解存储过程的概念.建立和调用方法. 二.实验环境 三.实验示例 1.定义一个函数,按性别计算所有学生的平均年龄. CREATE FUNCTION aver ...