python基础知识(四)--if语句,for\while循环

目录

if语句

if-else语句

if...elif...else...语句的语法

if嵌套语句语法

while循环

死循环

for循环

例题:

1.请使用*代替,并输出一个正方形的显示效果。

2.逢7必过的游戏

3.九九乘法表

[4.案例: 逢七必过游戏 [0, 999] 碰到特殊天气, 150 就结束1 2 3 4 5 6 8 9 10 11 12 13 15 16 18 ... ...](#4.案例: 逢七必过游戏 [0, 999] 碰到特殊天气, 150 就结束1 2 3 4 5 6 8 9 10 11 12 13 15 16 18 ... ...)

5.猜数字游戏

Python中有三大基本语句,它们支撑起了程序的业务逻辑处理。

三大基本语句有:

(1)顺序语句

(2)分支语句

(3)循环语句

1)顺序语句

顺序语句指的是:让代码按照顺序从上往下、一行一行的执行代码。

2)分支语句

分支语句指的是:程序在遇到不同条件时,要做判断处理。例如当条件成立,则执行代码A;当条件不成立,则执行代码B。

3)循环语句

循环语句指的是:反复多次执行地执行某操作。

另外的,也可以设定终止循环的关键字。

if语句

python 复制代码
if 条件: 
   条件成立时,要做的事情

if-else语句

python 复制代码
if 条件:
        满足条件时,要做的事情1
        满足条件时,要做的事情2
        满足条件时,要做的事情3
        ...(省略)...
else:
        不满足条件时,要做的事情1
        不满足条件时,要做的事情2
        不满足条件时,要做的事情3
        ...(省略)...

if...elif...else...语句的语法

python 复制代码
if 条件1:
        满足条件1,执行代码1
        ...
elif 条件2:
        满足条件2,执行代码2
        ...
elif 条件3:
        满足条件3,执行代码3
        ...
...

if嵌套语句语法

python 复制代码
if 条件1:
        满足条件1,做的事情1
        满足条,1,做的事情2
        ...
        if 条件2:
                满足条件2,做的事情1
                满足条件2,做的事情2
                ...

说明:

当成功满足外层的if条件执行后,才能执行内层的if语句。

while循环

python 复制代码
初始化变量语句
while 循环条件:
    循环体语句
    改变循环条件的语句  # 先写

例如,一起来完成:

(1)计算10 ~ 100之间所有自然数的和(包含10和100);

(2)分别使用正常和逆向思维来完成。

python 复制代码
# 正常
total_sum = 0
i = 10
while i <= 100:
    # print(i)
    total_sum += i
    i += 1
print(f"求和为:{total_sum}")

# 逆向
 sum = 0
 j = 100
 while j >= 10:
     sum += j
     j -= 1
 print(f"求和为:{sum}")

死循环

死循环也称为无限循环,指的是程序代码一直执行,不会停止。

产生死循环的情况有:

python 复制代码
(1)缺少了:改变循环条件的语句;
(2)误写了:循环条件;
(3)标准的死循环格式。

接下来,先来看看标准的死循环格式。

python 复制代码
while True:
        代码1
        代码2
        ...

for循环

与while循环功能类似,for语句也能完成反复多次的执行。

for语法:

python 复制代码
for 临时变量 in 序列:
    满足条件时,执行的代码1
    满足条件时,执行的代码2
    ......
[else:
        当for循环正常执行结束后,执行代码]

for循环里常见的序列range()函数。

|-------------|--------------------|
| 函数名 | 含义 |
| range(x, y) | 一个序列,专门用于给for循环使用。 |

说明:

range()中的参数表示从x到y的取值,即[x,y),表示能获取到x值,但获取不到y值。

嵌套循环的语法:

python 复制代码
初始化变量语句1
while 循环条件1:  # 外层循环
    [循环体语句1]
    初始化变量语句2
    while 循环条件2:  # 内层循环
        循环体语句2
        改变循环条件的语句2
    改变循环条件的语句1

说明:

(1)可以把内层循环当做一个循环的循环体语句来处理;

(2)当外层循环执行一次,内层循环执行所有。

例题:

1.请使用*代替,并输出一个正方形的显示效果。

python 复制代码
# 1.输出行
i = 1
while i <= 5:
    # 2.输出列
    j = 1
    while j <= 5:
        print("*", end="\t")
        j += 1
    print("")
    i += 1

2.逢7必过的游戏

if条件判断,while循环

python 复制代码
i=1
while i<=999:
    if i%7==0 or i%10==7 or i//10%10==7 or i//100%10==7:
        print('过')
    else:
        print(i)
    i+= 1

3.九九乘法表

for、while的两种实现:

python 复制代码
#for循环
for i in range(1, 10):
    for j in range(1, i+1):
        print(f"{j} * {i} = {i * j}",end='\t')
    print()

# 方案二 while循环
 i = 1
 while i<=9:

     j = 1
     while j<=i:
         print(j, '列', end='\t')
         j=j+1

     print(i, '行')
     i += 1

4.案例: 逢七必过游戏 [0, 999] 碰到特殊天气, 150 就结束

1 2 3 4 5 6 8 9 10 11 12 13 15 16 18 ... ...

(为了练习循环 break--continue)

python 复制代码
# 案例2: 逢七必过游戏 [0, 999] 碰到特殊天气, 150 就结束
# 1 2 3 4 5 6 8 9 10 11 12 13 15 16 18 ... ...
#  方式一
 for i in range(1000):
     if i%7==0 or i//100%10==7 or i//10%10==7 or i%10==7:
         continue # 跳过本次循环

     print(i)

     # print(i, i%7, i//100%10, i//10%10, i%10)

     if i==150:
         break

#方式二
i=0
while i<=999:
    if i%7==0 or i//100%10==7 or i//10%10==7 or i%10==7:
        i+=1
        continue
    print(i)

    if i==150:
        break
    i += 1

random模生成随机数的函数:

|---------------|----------------------------------|
| 函数名 | 含义 |
| randint(a, b) | 生成随机数,用于返回[a, b]之间的整数,并能取值a和b。 |

说明:

能同时取值a和b。

5.猜数字游戏

python 复制代码
目标: 猜数字游戏
"""
1 电脑生成一个随机数 [1, 100]
2 死循环
    2.1 用户输入一个猜的数字
    2.2 对比
    2.2.1 大了
    2.2.2 小了
    2.2.3 猜对了 结束
"""

import random

computer = int(random.randint(1, 100))
while True:

    user=int(input('请输入你猜的数字:\t'))

    if user >computer:
        print('大了')
    elif user<computer:
        print('小了')
    else:
        print('猜对了')
        break

快快动手实践吧~

相关推荐
秀儿还能再秀31 分钟前
机器学习——简单线性回归、逻辑回归
笔记·python·学习·机器学习
阿_旭2 小时前
如何使用OpenCV和Python进行相机校准
python·opencv·相机校准·畸变校准
幸运的星竹2 小时前
使用pytest+openpyxl做接口自动化遇到的问题
python·自动化·pytest
kali-Myon3 小时前
ctfshow-web入门-SSTI(web361-web368)上
前端·python·学习·安全·web安全·web
B站计算机毕业设计超人3 小时前
计算机毕业设计Python+大模型农产品价格预测 ARIMA自回归模型 农产品可视化 农产品爬虫 机器学习 深度学习 大数据毕业设计 Django Flask
大数据·爬虫·python·深度学习·机器学习·课程设计·数据可视化
布鲁格若门3 小时前
AMD CPU下pytorch 多GPU运行卡死和死锁解决
人工智能·pytorch·python·nvidia
AI原吾4 小时前
探索 Python HTTP 的瑞士军刀:Requests 库
开发语言·python·http·requests
single_ffish4 小时前
XPath:网络爬虫中的数据提取利器
爬虫·python