第二章:控制流程
文章目录
1.字面值_关键字_标识符
含义 | |
---|---|
字面值 | 就是一个值。a = 1 ,1就是字面值 |
关键字 | python底层已经定义好的变量名,我们在定义的时候不能使用这些关键字 |
标识符 | 打标记的符号,就是变量名 |
2.运算符
符号 | 含义 | 方法 |
---|---|---|
+ | 加 | a+b … 在字符串中可以用于字符串的拼接 |
– | 减 | a-b |
∗ \ast ∗ | 乘 | a ∗ \ast ∗b |
/ | 除 | 注意python中…俩个数是整数且能整除,结果也是浮点数…a = 6,b = 2…a/b=3.0 |
// | 商 | a//b 取头去尾 10//3=3…3 |
% | 模 | a%b 可以用来判断奇偶数…a%2 == 0(偶数)…a%2 != 0(奇数) |
** | 幂 | a**b |
3.比较运算符
符号 | 含义 | 案例 | 结果 |
---|---|---|---|
> | 大于 | a=5,b=3, a>b | True |
< | 小于 | a=5,b=3, a<b | False |
>= | 大于等于 | a=5,b=3, a>=b | True |
<= | 小于等于 | a=5,b=3, a<=b | False |
== | 是否等于 | a=5,b=3, a==b | False |
!= | 是否不等于 | a=5,b=3, a!=b | True |
python中,一个 = 表示赋值,俩个 == 表示等于
比较运算符中,结果均为布尔类型:True or False
a = 5
b = 7
print(a > b)
print(a < b)
print(a == b)
print(a != b)
print(a >= b)
print(a <= b)
# 比较运算符只有俩种结果,True False
执行结果如下
False
True
False
True
False
True
4.复合赋值运算符
符号 | 含义 | 运用举例 |
---|---|---|
+= | 加法赋值运算符 | a += b 等效于 a = a+b |
–= | 减法赋值运算符 | a – = b 等效于 a = a–b |
%= | 除法赋值运算符 | a %= b 等效于 a = a%b |
∗ \ast ∗= | 乘法赋值运算符 | a ∗ \ast ∗= b 等效于 a = a ∗ \ast ∗b |
/= | 取模赋值运算符 | a /= 1 等效于 a = a/b |
**= | 幂赋值运算符 | a ∗ \ast ∗ ∗ \ast ∗= b 等效于 a = a**b |
5.python_三大流程
-
1.顺序流程,从上往下运行
-
2.分支流程(选择流程):程序根据情况不同执行不同的代码(条件判断)
-
3.循环流程:程序重复执行某段代码
6.分支流程
初始形态 单分支流程
if 条件:
判断条件为True(继续执行)/False(跳过,或执行下一个)
进化形态 双分支流程
else:
判断上面的if条件为False时,执行这里的代码
最终形态 双分支流程
if 条件:
判断条件为True(继续执行)/False(跳过,或执行下一个)
elif 条件:
判断条件为True(继续执行)/False(跳过,或执行下一个)
判断条件为True(继续执行)/False(跳过,或执行下一个)
判断条件为True(继续执行)/False(跳过,或执行下一个)
else:
判断上面的条件都为False时,执行这里的代码
格式注意:
1.if关键字要顶格写
2.条件的结果必须是True/False
3.条件后面一定要加冒号,跟作文句号结尾是一个道理
4.条件满足的情况下,要去执行的代码,一定要缩进,缩进4个空格
# 590以上:重本 500-590:一本 420-500:二本 350-420:三本
grade = int(input("请输入你的高考分数:"))
if grade >= 590:
print("恭喜你已被录取进重本大学!")
elif 500 < grade <= 590:
print("恭喜你已被录取进一本大学!")
elif 420 < grade <= 500:
print("恭喜你已被录取进二本大学!")
elif 350 <= grade <= 400:
print("恭喜你已被录取进三本大学!不要灰心噢!")
else:
print("战斗还未结束,再接再厉,加油!")
7.分支流程嵌套
分支流程嵌套:
嵌套条件的特点,当外在条件满足时,才会执行里面的代码
pass: 占位的作用,保证程序不报错,保证代码的完整性 在单个条件时使用
# 创建游戏角色
# 输入游戏名称,服务器地址,当是中国时可以创建,否则失败
# 游戏名称不能为空
# 定义游戏名称 字符串: ""
name = input("请输入你的游戏名称:")
country = input("请输入服务器地址:")
# name != "": 名称不为空
if name != "":
if country == "美国":
print("这是国服,不支持美国服务器!!!")
elif country == "日本":
print("抱歉,你去韩服玩吧,这是国服你玩不了!!!")
elif country == "中国":
print("欢迎来到国服区,您的角色名称是{}".format(name))
else:
print("请去指定的服务器创建!!!")
else:
print("游戏名称不为空!!!")
8.逻辑运算符
符号 | 含义 |
---|---|
and | 用and连接,俩边的条件都要满足 |
or | 用or连接,俩边满足一个就好 |
not | 表否定 |
and
a = 8 # 定义初始值
b = 2
if a % 2 == 0 and b * 5 == 10: # 俩个条件要都满足,为True
print("条件满足")
else:
print("条件不满足")
or
a = 8 # 定义初始值
b = 2
if a % 2 == 0 or b * 5 == 10: # 满足其中一个条件就为True
print("条件满足")
else:
print("条件不满足")
not
a = False
if not a: # 因为a是False,not a 就是True
print("good") # not后面的表达式为False时,执行这里的语句,not False = True
# 当 if 判断条件为True是,才会执行冒号后面的语句
9.input_用户输入
input() :可以用变量接受保存
1.括号内的放入的是提示内容
2.用于接受用户输入的结果
3.默认是输入的字符串
4.可以用变量接受
name = input()
name = input("请输入你的名字:") #(提示句根据条件自己来定)
i = input("请随机输入一个数字:")
if i <= "20":# 根据你在控制台输入的数字,判断i是否小于等于20,条件为True,就打印name
print(name)
# 运行后,控制台中会出现以下提示句,是在控制台中输入
请输入你的名字:玺
请随机输入一个数字:5
# 输入后点 enter 键,得出打印结果(或继续运行后面的,我这边只写了一段)
玺
10.while循环
while 判断条件:
条件成立就执行这里的代码
debug:代码调试的工具
1.打断点,打在你要看的地方,不知道在哪打断点就,打在程序开始的地方
2.调试执行
# 打印1,10之间的数字
# 先定义一个初始值
a = 1 # 起始值
while a <= 10: # 当a<10时,判断条件为True,就打印a
print(a)
a += 1 # a += 1 转换一下> a=a+1 a的起始值时1,1+1=2,是不是小于10,就继续循环,直到a>10,停止循环
执行结果如下
1
2
3
4
5
6
7
8
9
10
11.break_continue
break:结束循环
continue:跳过本次循环
# 定义一个初始值 i = 1
i = 1
while i <= 9: # 判断 i 当小于等于9时,循环打印 i
print(i)
if i == 5: # 当 i 等于5时,运行到此结束
print("运行到此结束")
break 当i满足等于5时,while循环没接收停止的信号,会继续循环,5<9
还是满足i<=9的条件,会继续往下执行,又碰到i=5了,这时候会卡在
这边,控制台不停的打印5,这时候就可以用到break,满足条件时停止运行
i += 1
# =========================================================================
i = 1
while i <= 9:
if i == 5:
i += 1 # 当 i=5,i+1
print("5已被跳过")
continue (跳过此循环),当i=5时,跳过此循环,5<9,while循环继续执行
又回到i=5,就会不停的打印(5已被跳过),这是我们可以加一个,i += 1,这时i=6,就会
执行while循环直到i<=9的条件不满足时,停止循环
print(i)
i += 1
12.while_案例
"""
打印由 * 组成的正方形
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
"""
i = 1 # 行
while i <= 5:
j = 1 # 列
while j <= 5:
print("*", end=" ") # end="" :末尾不换行,加空格
j += 1
print("") # 换行
i += 1