流程控制

流程结构分为3种

  1. 顺序结构

  2. 分支结构

  3. 循环结构

一  分支结构

(1) 单一条件分支

主体结构:

if 条件表达式:
    #为真得代码块
 

(2) 双向条件分支

主体结构:
if 条件表达式
    #为真代码块
else:
    #为假的代码块
 

(3) 多向条件分支

主体结构:

if 条件表达式:
    #为真得代码块
elif 条件表达式:
    #为真得代码块
...
else:
    #以上条件都不满足  则走else
 

实例

grade = eval(input('请输入你的成绩'))
if grade>100 or grade<0:
    print('请输入正确的成绩')
elif grade>=90 and grade<=100:
    print('成绩为 优')
# elif grade>=70 and grade<=89
elif grade>=70 and grade<90:
    print('成绩为 良')
elif grade>=60 and grade<70:
    print('成绩 勉强合格')
else:
    print('成绩不合格')
 

(4) 巢状分支结构

概述: 说白了 就是if的嵌套

格式:

if 条件表达式
    if 条件表达式
        #为真代码块
    else:
        #为假的代码块
else:
    if 条件表达式
        #为真代码块
    else:
        #为假的代码块
 

(5) if 的简写

 
‘为真的代码块’ if 条件表达式  else  ‘为假得代码块’

二  循环结构

(一) while 循环

主体结构:
while 条件:  
    #循环体
    
#搭配else
while 条件:
    #循环体
else:
    #代码块
 

注意:

  1. 如果条件一直为真 则为死循环 (在书写循环得时候 需要注意)

  2. while 和else 搭配得时候 当条件表达式为 假得时候 会执行else

  3. 当 循环体内 执行了break 不会在走else

(二) for 循环

主体结构
for 变量名 in 序列:
    #函数体
#搭配else 
for 变量名 in 序列:
    #函数体
else:
    #代码块
 

注意:

  1. for和else 搭配得时候 当条件表达式为 假得时候 会执行else

  2. 当 循环体内 执行了break 不会在走else

  3. 只能遍历序列(也就是多个值)

  4. for 常和 range搭配使用

(三) 循环关键字

  1. break 跳出循环

  2. continue 跳过本次循环 继续下一次循环

  3. 只能使用在循环中

 

运算符

一、算数运算符

  1. +

  2. -

  3. *

  4. / 返回浮点数 float

  5. // 返回整数部分

  6. ** x得 y次方

  7. % 取余数

二、比较运算符

 
>   <   >=  <=  !=   ==  
 

注意:

返回bool值

三、赋值运算符

 
+=  -=      *=      **=     /=  //=     %=
 

四、逻辑运算符

运算符 运算符说明 使用 注意
and 逻辑与 俩侧为真 才为真 True and True 如果俩侧都为真 则返回 后一个值
or 逻辑或 俩侧为假才为假 False or False  
not 逻辑非 真为假 假为真  

五、成员运算符

运算符 运算符说明
in 某个值 是否存在 序列中 返回 bool值
not in 某个值 是否不存在 序列中 返回 bool值

六、身份运算符

运算符 运算符说明 相当于
is 判断俩个标识符 是否引用自同一个对象 行 id(a) == id(b)
is not 判断俩个标识符 是否引用自不同对象 id(a) != id(b)

七、位运算符

运算符 运算符说明
& 按位与 参与运算的俩个值 如果对应得俩个相同 则为1 否则位0
| 按位或运算 有一个为1 就为1
^ 按位异或 当俩位数 不相同时 就为1
~ 按位取反运算符 把二进制得数 进行取反
<< 左移运算符: 2<<1 像左移动一位 高位丢弃 低位补0
>> 右移运算符: 2<<1 像右移动一位 高位补0 低位丢弃

注意:

运算符优先级 不建议记住 如果有优先级问题 使用括号


python 基础(三) 程序基本流程的更多相关文章

  1. Python 基础 三 反射

    Python 基础 三 反射 今天我们先介绍一下反射这个概念,啥是反射?反射就是自己检测自己.在我们Python的面向对象中的反射是啥意思呢?就是通过字符串的形式操作对象相关的属性.python中的一 ...

  2. 进击的Python【第三章】:Python基础(三)

    Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...

  3. Python基础-三次用户验证登录购买商品程序

    需求: 一:三次登录锁定 1.用户信息存放于文件中 2.尝试三次都失败,锁定用户 二.购物车功能要求: 要求用户输入总资产,例如:2000显示商品列表,让用户根据序号选择商品,加入购物车购买,如果商品 ...

  4. Python 基础三 文件 函数

    今天回顾一下之前学的文件操作相关知识点,对于文件的操作,主要有一下几部分构成: 一.文件的基础知识 1.文件操作的基本流程 文件操作其实可以分成三大部分: 1.打开文件,获取文件句柄并赋予一个变量 2 ...

  5. Python基础三(选择,循环)

    序 首先我们知道程序的执行有三种结构:顺序.选择.循环三种结构,而为了方便我们书写和多次利用我们就需要把一段代码封装器来,这就是方法.今天我就说的是程序的基本结构的格式和方法. 注:所有的程序都可以通 ...

  6. python基础(3)---流程控制

    流程控制 与C语言不通的是python的流程控制代码块不是用{}花括号表示的,而是强制缩进来控制的:而且缩进必须一致,官方推荐是使用4个空格,不建议使用tab(制表符)做缩进,一是不同的系统tab所占 ...

  7. python基础02—运算符与流程控制

    运算符与流程控制 运算符 赋值运算 用'='表示,'='的左边只能是变量 算术运算 +.-.*:加.减.乘 /:除法运算,运算结果为浮点数 //:除法运算,运算结果为整数(商) %:求余 **:求幂 ...

  8. Python基础三. 函数、lambda、filter、map、reduce

    一.概述 函数, 就是用一些语句组织起来实现一组特定的功能, 用来重复调用. 函数的作用及意义:最大化的重用代码和最小化的代码冗余以及对流程的分解. Python中有哪些函数: 内建的函数 第三方模块 ...

  9. Python基础(三)——集合、有序 无序列表、函数、文件操作

    1.Set集合 class set(object): """ set() -> new empty set object set(iterable) -> n ...

随机推荐

  1. go 包的问题

    同一个包下的所有方法,都整合到一个里面去了,通过包名可以任意调用包下的方法. 文件夹的名字必须要和文件里面的package的名字一样,否则会报错... 导文件就是文件所在的包 导包import(),是 ...

  2. 周期性计划(一个cron守护进程):

    周期性计划(一个cron守护进程): root@ubuntu:/etc# ps -ef | grep cron root 903 1 0 16:25 ? 00:00:00 /usr/sbin/cron ...

  3. codeforces 460C. Present 解题报告

    题目链接:http://codeforces.com/submissions/ywindysai 题目意思:有 n 朵花,每朵花都有一定的高度(第 i 朵花对应 ai),m 天之后要把这些花送给别人. ...

  4. Entityframework连接Mysql遇到的问题

    1.mysql.data.entity的版本一定要与mysql-connector-net的版本保持一致,我用的版本是6.9.12 2.有时会遇到连接MySQL数据库时提示missing server ...

  5. Understand JavaScript’s “this” With Clarity, and Master It

    The this keyword in JavaScript confuses new and seasoned JavaScript developers alike. This article a ...

  6. Python:递归

    递归两个基本要素: (1) 边界条件:确定递归到何时终止,也称为递归出口. (n = 1)(2) 递归模式:大问题是如何分解为小问题的,也称为递归体.(n*(n-1)!   n>1) 例:累加 ...

  7. C语言中数组做函数参数的问题

    数组做函数参数,会退化成为一个指针变量.因此在进行数组参数传递的同时,需要传递一个数组长度的参数变量. 数组长度可以通过sizeof(arr)/siezof(arr[0])来得到.关于这个sizeof ...

  8. Java标准输入

    Java: import java.util.*; public class Main{ public static void main(String args[]){ Scanner cin = n ...

  9. 非旋treap套线段树

    BZOJ3065. 去年用pascal 块链过了.. 今年来试了试非旋treap大法   注定被块链完爆 代码留这. 第一份 :辣鸡的  垃圾回收做法  跑得极慢 #include <bits/ ...

  10. hdu 1028 & hdu 1398 —— 整数划分(生成函数)

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1028 整数划分,每个数可以用无限次: 所以构造 f(x) = (1+x+x2+x3+...)(1+x2+x ...