python 基础(三) 程序基本流程
流程控制
流程结构分为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:
#代码块
注意:
如果条件一直为真 则为死循环 (在书写循环得时候 需要注意)
while 和else 搭配得时候 当条件表达式为 假得时候 会执行else
当 循环体内 执行了break 不会在走else
(二) for 循环
主体结构
for 变量名 in 序列:
#函数体
#搭配else
for 变量名 in 序列:
#函数体
else:
#代码块
注意:
for和else 搭配得时候 当条件表达式为 假得时候 会执行else
当 循环体内 执行了break 不会在走else
只能遍历序列(也就是多个值)
for 常和 range搭配使用
(三) 循环关键字
break 跳出循环
continue 跳过本次循环 继续下一次循环
只能使用在循环中
运算符
一、算数运算符
+-*/返回浮点数 float//返回整数部分**x得 y次方%取余数
二、比较运算符
> < >= <= != ==
注意:
返回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 基础(三) 程序基本流程的更多相关文章
- Python 基础 三 反射
Python 基础 三 反射 今天我们先介绍一下反射这个概念,啥是反射?反射就是自己检测自己.在我们Python的面向对象中的反射是啥意思呢?就是通过字符串的形式操作对象相关的属性.python中的一 ...
- 进击的Python【第三章】:Python基础(三)
Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...
- Python基础-三次用户验证登录购买商品程序
需求: 一:三次登录锁定 1.用户信息存放于文件中 2.尝试三次都失败,锁定用户 二.购物车功能要求: 要求用户输入总资产,例如:2000显示商品列表,让用户根据序号选择商品,加入购物车购买,如果商品 ...
- Python 基础三 文件 函数
今天回顾一下之前学的文件操作相关知识点,对于文件的操作,主要有一下几部分构成: 一.文件的基础知识 1.文件操作的基本流程 文件操作其实可以分成三大部分: 1.打开文件,获取文件句柄并赋予一个变量 2 ...
- Python基础三(选择,循环)
序 首先我们知道程序的执行有三种结构:顺序.选择.循环三种结构,而为了方便我们书写和多次利用我们就需要把一段代码封装器来,这就是方法.今天我就说的是程序的基本结构的格式和方法. 注:所有的程序都可以通 ...
- python基础(3)---流程控制
流程控制 与C语言不通的是python的流程控制代码块不是用{}花括号表示的,而是强制缩进来控制的:而且缩进必须一致,官方推荐是使用4个空格,不建议使用tab(制表符)做缩进,一是不同的系统tab所占 ...
- python基础02—运算符与流程控制
运算符与流程控制 运算符 赋值运算 用'='表示,'='的左边只能是变量 算术运算 +.-.*:加.减.乘 /:除法运算,运算结果为浮点数 //:除法运算,运算结果为整数(商) %:求余 **:求幂 ...
- Python基础三. 函数、lambda、filter、map、reduce
一.概述 函数, 就是用一些语句组织起来实现一组特定的功能, 用来重复调用. 函数的作用及意义:最大化的重用代码和最小化的代码冗余以及对流程的分解. Python中有哪些函数: 内建的函数 第三方模块 ...
- Python基础(三)——集合、有序 无序列表、函数、文件操作
1.Set集合 class set(object): """ set() -> new empty set object set(iterable) -> n ...
随机推荐
- 测试,测试开发,QA,QM,QC--------- 测试之路勿跑偏
测试,测试开发,QA,QM,QC可能是测试行业里的细分角色了,加了不少群学习,看到不同人有对自己不同的角色定位.我也做了这挺长时间的测试,也和大部分测试同胞一样,为了一份好的工作学习各种各样的技术,但 ...
- Android加载/处理超大图片神器!SubsamplingScaleImageView(subsampling-scale-image-view)【系列1】
Android加载/处理超大图片神器!SubsamplingScaleImageView(subsampling-scale-image-view)[系列1] Android在加载或者处理超大巨型图片 ...
- codeforces 701E E. Connecting Universities(树的重心)
题目链接: E. Connecting Universities time limit per test 3 seconds memory limit per test 256 megabytes i ...
- 出现”/var/lib/mysql/mysql.sock“不存在的解决方法
这种情况大多数是因为你的mysql是使用rpm方式安装的,它会自动寻找 /var/lib/mysql/mysql.sock 这个文件,通过unix socket登录mysql.常见解决办法如下:1.创 ...
- 洛谷 P3803 多项式乘法(FFT) —— FFT
题目:https://www.luogu.org/problemnew/show/P3803 终于学了FFT了! 参考博客:https://www.cnblogs.com/zwfymqz/p/8244 ...
- bzoj4066
KD-tree 强制在线就不能愉快的做这道题了. 我们用KD-tree维护平面上的点,这样建出来的树高大概是log,复杂度过得去,但是插入过多会使树深很深,这样就能卡死,那么我们每个10000次插入就 ...
- In-App Purchase Programming Guide----(一) ---- About In-App Purchase
About In-App Purchase In-App Purchase allows you to embed a store inside your app using the Store Ki ...
- 5、overflow、hover
一.overflow 1.属性介绍 说明: 这个属性定义溢出元素内容区的内容会如何处理.如果值为 scroll,不论是否需要,用户代理都会提供一种滚动机制.因此,有可能即使元素框中可以放下所有内容也会 ...
- ElasticSearch基础之批量操作(mget+mbulk)
在前面的演示中,我们都是基于一次http查询,每次查询都要建立http的三次握手请求,这样比较耗费性能!因此ES给我们提供了基本的批量查询功能,例如如下的查询,注意里面的index是可以任意指明的 ...
- UVaLive 2965 Jurassic Remains (状态压缩)
题意:给定 n 个大写字母组成的字符串,选择尽量多的串,使得大写字母都能出现偶数次. 析:由于n比较小,我们可以枚举前n/2的所有组合,然后再从后面查找. 代码如下: #pragma comment( ...