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只能输入是或否")
运行结果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通