【Python基础学习记录2】Python流程控制语句
二、Python流程控制语句
1、流程控制语句
顺序执行:程序按照编排好的顺序从上到下依次执行,最终完成所有代码的执行
分支语句:工作生活无时不在的判断与选择,在编程中被称为"分支语句"
循环语句:对于程序周而复始的执行
2、分支语句的基本形式
2.1 基本形式
if 判断条件:
条件成立时执行语句块
else:
条件不成立时执行语句块
2.2 判断条件的书写规则
1)每个if语句的核心都是判断条件的编写
2)判断条件必须是返回True(成立)或者False(不成立)的表达式
3)我们通常称返回布尔类型的表达式为布尔表达式
4)表达式:通过数字、文本、运算符连接形成一个有意义的公式
2.3 等值判断
1)判断条件中使用==符号,来决定前后两值是否相等。
2)判断条件中使用!=符号,来判断前后两值是否不相等。
3)等值判断可以用于数字、字符串,且字符串区分大小写。
4)1 == 1.0在python中数值上相等就成立,为true
2.4 数字与布尔表达式的等值比较
数字0代表False,非0代表True
2.5 比较运算符
比较运算符 |
说明 |
== |
等于 |
!= |
不等于 |
> |
大于 |
< |
小于 |
>= |
大于等于 |
<= |
小于等于 |
3、逻辑运算符
逻辑运算符是指在多个条件组合判断时使用的运算符
逻辑运算符优先级为not > and > or
运算符 |
描述 |
示例 |
and(与) |
前后条件都成立 , 结果才成立 |
1 == 1 and 2 > 1输出True |
or(或) |
前后有一个条件成立结果就成立 |
1 > 2 or 2 > 1输出True |
not(非) |
对结果取反 |
not 1 == 1输出False |
4、多分支语句及分支语句的嵌套
4.1 多分支语句形式
if 判断条件1:
条件1成立时执行语句块......
elif 判断条件2:
条件2成立时执行语句块......
elif...
else:
其他情况下时执行语句块......
4.2 分支语句的嵌套
分支语句嵌套是指分支语句中再次使用if进行二次判断
简化了书写的逻辑,便于维护,提高可读性
5、循环语句
循环是在满足条件下周而复始的运行的情况
5.1 while循环
while关键字用于创建循环,在满足条件时,将循环执行语句块
语法:
while 定义循环的执行条件:
编写要被执行的循环代码
编写修改执行条件的代码
示例:
i = 0
while i < 5:
print("python is the best language")
i = i + 1
6、计数器
通常循环有明确的执行次数,计数器便是保存循环次数的变量
计数器常用字母i(index)来命名
死循环:当循环执行条件永远成立时,没有终点的循环被称为"死循环"
7、continue与break
continue 用于跳过当前循环,执行剩余语句
break关键字用来终止循环语句
8、循环嵌套
循环嵌套是指循环中出现循环的使用情况
print("",end="") end不换行;print(“”)要换行
内部嵌套的形式:
while 条件1:
while 条件2:
内部循环语句
外部循环语句
9、代码实践
9.1 计算1到100以内能被3或者7整除,但不能同时被3和7整除的数的个数
num = 1 count = 0 while num <= 100: if num % 21 != 0 and (num % 3 == 0 or num % 7 == 0): count += 1 num += 1 print(count)
9.2 打印*号菱形图
num = int(input("请输入一个奇数:")) i = 1 while i <= num: #7行 if i <= num // 2 + 1: j = 0 while j < (num // 2 + 1) - i: print(" ",end="") j = j + 1 print("*" * (2 * i - 1)) i = i +1 else: j = 0 while j < i - (num // 2 + 1): print(" ",end="") j = j + 1 print("*" * (2 * (num -i) + 1)) i = i + 1
9.3 列出1000以内的质数
num = 2 while num <= 1000: i = 2 is_prime = True j = num while i < j: if num % i == 0: is_prime = False break i = i + 1 if is_prime == False: print("{}不是质数".format(num)) else: print("{}是质数".format(num)) num = num + 1