python基础 (三)
成员运算
判断某个个体在不在某个群体里,关键词:in(在),not in(不在)例如:

特殊的,如果是字典中,因为字典的V值是隐藏的,能查看的只有V,所以无法判断V值,只能判断K值。

身份运算
用于判断两个数据的值和内存地址是否相等,== 判断值,is 判断地址

由图可知,即使的相同的值,他们所在的地址也可能是不同的,因此可以说:
变量的值相同,内存地址可能不同;变量的内存地址相同,他们的值一定相同。
流程控制
流程控制即控制事物发生的流程,共分为三类:
1.顺序结构
即从上到下依次执行数据,一般的代码都是依照这种流程。
2.分支结构
在代码的运行中根据不同的条件,会执行执行不同的结果。
3.循环结构
在程序的运行中会有一部分代码需要反复执行。

必知必会
在正式学习前有一些需要提前了解的点:
1.所有的条件都会转化为布尔值,来确定子程序是否运行。
2.在python中,使用缩进来表示代码的从属关系,代码与子代码之间必须要有缩进。(在python中推荐使用4个空格来缩进)
3.并不是所有的代码都可以拥有子代码。
4.同一段代码下的子代码,必须要有相同的缩进量。
另,如果看到一段代码的后面有冒号,则可以确定下面为这段代码的子代码。
分支结构
关键词if:意味条件成立后运行之后的代码

if 和 else 配合使用,条件符合时执行if 下的代码,条件不符时执行else 下的代码

if 和 elif 和else 配合使用,先判断if 的条件符不符合,符合就执行,不符合就再与elif 的条件判断,如果也不符合,就去执行else 下的代码。
elif 可能不止一条,此时就按从上到下的顺序依次判断。

此过程以流程图表示如下图

if判断之嵌套
if 判断之间可以嵌套,即可以在if 条件下再写一个if 条件,在满足第一个if 条件后会进入第二个if 条件再进行判断。

将上述过程用流程图来表示如下图所示:

循环结构
关键词:while,这种结构表示当满足while的条件时,就会循环的执行子代码块(True表示永远满足)

while + break 结构
由上图可知,当进入循环语句后,只要还满足循环的条件,那么程序就会一直循环下去,当我们需要打破这种循环是,就要用到break。

上述程序的流程如图所示

另外要注意的是,break是意义是结束本层循环。也就是说,当存在多层循环时,break只能将这一层的循环结束而无法结束更上一层的循环。

上述程序的流程如图所示

全局标志位
由于break只能结束本层循环,如果想直接结束循环的话可以使用全局标志位来代替break结束循环。

练习
猜年龄的游戏
real_age = 20 count = 0
while count <= 3:
if count < 3:
print('\n你还有%s次机会' % (3-count)) age = int(input('输入你猜的年龄')) # 将获取的字符串转化为整型
if age == real_age: # 判断年龄
print('你猜对了')
break
elif age > real_age:
print('你猜的年龄太大了') else:
print('你猜的年龄太小了')
count += 1
else:
while True: # 是否选择继续
again = input("\n是否继续:是/否")
if again == "是":
count = 0
break
elif again == "否":
count += 1 # 让count值超出循环条件
break
else:
print("\n只能输入是或否")
运行结果

python基础 (三)的更多相关文章
- Python 基础 三 反射
Python 基础 三 反射 今天我们先介绍一下反射这个概念,啥是反射?反射就是自己检测自己.在我们Python的面向对象中的反射是啥意思呢?就是通过字符串的形式操作对象相关的属性.python中的一 ...
- 进击的Python【第三章】:Python基础(三)
Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...
- Python 基础三 文件 函数
今天回顾一下之前学的文件操作相关知识点,对于文件的操作,主要有一下几部分构成: 一.文件的基础知识 1.文件操作的基本流程 文件操作其实可以分成三大部分: 1.打开文件,获取文件句柄并赋予一个变量 2 ...
- python基础三
多级菜单 多级菜单 可依次选择进入各子菜单 所需新知识点:列表.字典 #!/usr/bin/env python # -*- coding: utf-8 -*- menu = { '北京':{ '海淀 ...
- Python基础三. 函数、lambda、filter、map、reduce
一.概述 函数, 就是用一些语句组织起来实现一组特定的功能, 用来重复调用. 函数的作用及意义:最大化的重用代码和最小化的代码冗余以及对流程的分解. Python中有哪些函数: 内建的函数 第三方模块 ...
- Python基础(三)——集合、有序 无序列表、函数、文件操作
1.Set集合 class set(object): """ set() -> new empty set object set(iterable) -> n ...
- python基础(三)
set集合 set集合创建 #方式1: se = {'} #与字典类似dict1 = {'k1','v1','k2','v2'} #方式2: se = set() #创建一个空的集合 list1 = ...
- 【笔记】Python基础三:文件
一,文件操作 (一),文件处理流程 1,打开文件,获得文件句柄(open函数提供)并赋值 2,通过句柄对文件进行操作 3,关闭句柄 f = open('陈粒',encoding='utf-8')#op ...
- Python基础三(选择,循环)
序 首先我们知道程序的执行有三种结构:顺序.选择.循环三种结构,而为了方便我们书写和多次利用我们就需要把一段代码封装器来,这就是方法.今天我就说的是程序的基本结构的格式和方法. 注:所有的程序都可以通 ...
- Python基础(三) 数据类型
我们首先要看的是几乎任何语言都具有的数据类型,包括字符串.整型.浮点型以及布尔类型.这些基本数据类型组成了基本控制块,从而创建的Python应用程序. 一.基本结构 1.数值: Python支持不同的 ...
随机推荐
- 第04章_MySQL运算符详解
第04章_运算符 1. 算术运算符 算术运算符主要用于数学运算,其可以连接运算符前后的两个数值或表达式,对数值或表达式进行加(+).减(-).乘(*).除(/)和取模(%)运算. 1.加法与减法运算符 ...
- redis序列化和反序列化的操作-(以前咋操作我都忘记了)
//拿到数据,redis如果有则将现在有的传进去,如果没有则获取接口 ExWritPropertyVo ExWritPropertyVo = new ExWritPropertyVo(); ExWri ...
- nacos的简单使用
1.根据自身情况下载稳定版本:https://github.com/alibaba/nacos/releases2.安装:zip包 cmd运行: 8848端口cmd startup.cmd3.登录名密 ...
- AGC050B Three Coins
做的时候有思考到是否能转化成移动点问题,但是没有清晰的把他解释出来. NOIP的时候也一样,T3也有考虑到是否能转为差分,但是也没有清晰的写出来. 自己做题的时候应尽量保证草稿纸和思绪的清晰,而不是在 ...
- 洛谷 P6189 - [NOI Online #1 入门组]跑步(根号分治+背包)
题面传送门 题意: 求有多少个数列 \(x\) 满足: \(\sum x_i=n\) \(x_i\geq x_{i+1}\) 答案对 \(p\) 取模. ...你确定这叫"入门"组 ...
- Codeforces 1404D - Game of Pairs(构造)
Codeforces 题面传送门 & 洛谷题面传送门 首先注意到 \(\sum\limits_{i=1}^{2n}i=\dfrac{2n(2n+1)}{2}=n(2n+1)\equiv n\p ...
- 洛谷 P5540 - [BalkanOI2011] timeismoney | 最小乘积生成树(最小生成树)
洛谷题面传送门 大概是一个比较 trivial 的小 trick?学过了就不要忘了哦( 莫名奇妙地想到了 yyq 的"hot tea 不常有,做过了就不能再错过了" 首先看到这种二 ...
- #10470. 「2020-10-02 提高模拟赛」流水线 (line)
题面:#10470. 「2020-10-02 提高模拟赛」流水线 (line) 题目中的那么多区间的条件让人感觉极其难以维护,而且贪心的做法感觉大多都能 hack 掉,因此考虑寻找一些性质,然后再设计 ...
- [R] cbind和filter函数的坑
最近我用cbind函数整合数据后,再用filter过滤数据,碰到了一个大坑. 以两组独立样本t检验筛选差异蛋白为例进行说明吧. pro2 <- df2[1:6] Pvalue<-c(rep ...
- Linux— 查看系统发布版本信息
[root@zf-test-web01-4 ~]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core)