Python -if/while/for

python if多条件并列判断的三种方法

如果使用python的if进行多个条件表达式的判断呢?下面介绍三种方法:

  1. 使用and或or来连接多个条件表达式,比如条件1 and 条件2 and条件3等等,当使用and连接多个表达式时,只要其中一个表示式为False,则if的条件为False,否则为True,相反,or连接的表达式中,只要有一个表达式为True,则if的条件为True,否则为False;
  2. and和or的混合使用,二者的优先级按前后顺序执行;
  3. 使用比较运算符,比如 1<=x >=2;

if多条件并列判断实例代码

>>> if True and True and False:
...     print("True")
... 
>>> if False or False or True:
...     print("True")
... 
True
>>> if True and False or True:
...     print("True")
... 
True
>>> if True and False or False:
...     print("True")
... 
>>> if 1 < 2 < 3:
...     print("True")
... 
True

一、for 循环

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

1、for 循环的语法格式

for 循环语法格式

2、for 循环,也叫遍历、迭代的实现逻辑:以列表为例,从索引为0开始取值,直至取出全部的值,循环结束

for循环的实现逻辑

3、对字典使用for循环:取到值默认是所有的key;取字典中所有的值:for v in dic.values();取字典中所有的键和值:for k,v in dic.items(),在获取所有的键和值时若使用单个变量接收的话得到的是结果元组,了解即可

对字典使用for循环

4、多重for循环之列表嵌套列表一:在执行第一个for循环之后会进入第二个for循环,在第二个for循环完成之后第一轮循环才真正结束,开始进入第二轮的循环

列表嵌套列表循环一

5、多重for循环之列表嵌套列表二:

列表嵌套for循环二

6、多重for循环打印图形:

多重for循环

内置函数range():

1、传一个参数:默认从0开始,参数值代表终止位置的值,不包含这个参数值,如:

内置函数range()

2、传两个参数:第一个参数代表起始位置,第二个参数代表终止位置(左闭右开)

3、传三个参数:第一个参数代表起始位置,第二个参数代表终止位置,第三个参数代表步长(左闭右开)

end = '':打印的最后一行添加end = '' 表示不换行

7、使用for循环打印九九乘法表

for循环打印九九乘法表

\t:水平制表符,个人理解就是相当于按一下键盘上的tab键

一、while循环嵌套

1.1 应用场景

故事概述:上一篇我们说了女朋友生气了,惩罚我们说3遍“媳妇⼉, 我错了”,这个程序是不是循环即可?但如果⼥朋友说:还要刷今天晚饭的碗,这个程序怎么书写?

while 条件: 
 print('媳妇⼉, 我错了') 
print('刷晚饭的碗')

但如果女朋友还是生气,把这套惩罚要连续3天都执⾏,有如何书写程序?

while 条件:
 while 条件:
 print('媳妇⼉, 我错了')
 print('刷晚饭的碗')

1.2 语法

while 条件1:
 条件1成⽴执⾏的代码
 ......
 while 条件2:
 条件2成⽴执⾏的代码
 ......

所谓while循环嵌套,就是一个while里面嵌套了一个while的方法,没个while和之前的基础语法都是相同的。

1.3 快速体验:复现场景

代码:

j = 0
while j < 3:
 i = 0
 while i < 3:
 print('媳妇⼉,我错了')
 i += 1
 print('刷晚饭的碗')
 print('⼀套惩罚结束----------------')
 j += 1

执行结果:

理解这个流程:

当内部循环执行完成之后,再执行下一次外部循环的条件判断。

二、while循环嵌套应用

2.1 应用一:打印星号(正方形)

需求:

*****
*****
*****
*****
*****

代码:

分析:一行输出5个星号,重复打印5行。

# 重复打印5⾏星星
j = 0
while j <= 4:
 # ⼀⾏星星的打印
 i = 0
 while i <= 4:
 # ⼀⾏内的星星不能换⾏,取消print默认结束符\n
 print('*', end='')
 i += 1
 # 每⾏结束要换⾏,这⾥借助⼀个空的print,利⽤print默认结束符换⾏
 print()
 j += 1

2.2 应用二:打印星号(三角形)

需求:

*
**
***
****
*****

代码:

分析: ⼀⾏输出星星的个数和⾏号是相等的,每⾏:重复打印⾏号数字个星号,将打印⾏星号的命令重 复执⾏5次实现打印5⾏。
# 重复打印5⾏星星
# j表示⾏号
j = 0
while j <= 4:
 # ⼀⾏星星的打印
 i = 0
 # i表示每⾏⾥⾯星星的个数,这个数字要和⾏号相等所以i要和j联动
 while i <= j:
 print('*', end='')
 i += 1
 print()
 j += 1

2.3 九九乘法表

执行结果:

代码:

# 重复打印9⾏表达式
j = 1
while j <= 9:
 # 打印⼀⾏⾥⾯的表达式 a * b = a*b
 i = 1
 while i <= j:
 print(f'{i}*{j}={j*i}', end='\t')
 i += 1
 print()
 j += 1

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

早日实现财富自由-2025

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值