当前位置: 首页 > news >正文

python的流程控制

一、判断语句

1.1 if语句

if语句是最常用的流程控制语句,通常由条件加子句(代码块)组成,条件求值为True时执行子句,如果条件为False时跳过。

if语句包含以下部分:

点击查看代码
if 关键字
条件(表达式)
冒号:
缩进的代码块

1.2 else 语句

if语句后面可以跟着一个else语句,在条件求值为False时执行。

点击查看代码
else语句包含以下部分:
else 关键字
冒号:
缩进的代码块

1.3 elif语句

elif语句是“否则如果”,假如你希望程序执行尽可能多的判断中的一个,可以使用elif,它总是在if或elif后面,仅在前面的条件为False时执行。

点击查看代码
elif语句包含以下部分:
elif关键字
条件(表达式)
冒号:
缩进的代码块

1.4 案例

利用if语句判断所输入的年份是否为闰年。
先回顾一下闰年怎么判断,当一个年份可以整除4但不可以被100整除或者可以被400整除,那么这个年份就是闰年,所以可以写出代码

点击查看代码
year = int(input("请输入你要判断的年份:\n"))
if ((year%4 == 0 and year%100 != 0) or year%400 == 0):   
#利用and 和 or 来对我们的条件进行判断,同时要注意括号包裹,防止遗漏。所以对于有时候搞不懂运算顺序的时候,就打上括号就可以了。print("闰年")
else:print("不是闰年")

二、while循环

while语句可以让程序循环的执行,只要while语句的条件为True,while子句就会一遍一遍的执行。

点击查看代码
while语句包含以下部分:
关键字
条件(表达式)
冒号:
缩进的代码块

2.1 break字句

break语句可以跳出循环,当while循环语句执行到break时,程序会马上退出循环。

2.2 continue语句

continue语句可以让程序回到循环的开始,即重新开始下一次循环,判断条件表达式的值。
他们之间的区别是,如果我们想要做到达成某个条件就让这个程序不在循环,则使用break。但是我只是想跳过达成条件的这次循环,其他循环我想继续下去的时候就使用continue。

三、for循环语句

for循环语句可以让程序循环的执行固定的次数,通过range()来实现程序循环的次数。

点击查看代码
for语句包含以下部分:
for关键字
一个变量名
in 关键字
range()函数(最多可以传入三个参数:初始值,最大值,步长)
冒号:
缩进的代码块

四 、import 语句导入模块

Python中可以直接调用的基本函数例如print函数等,被称为内置函数,除此之外Python也包括一系列模块,称作“标准库”,每一个模块都包括了一些相关函数。例如math模块有数学运算相关的函数。random模块有随机数相关的函数。
使用方法可为:

点击查看代码
import requests
from bs4 import BeautifulSoup

五、案例

5.1 猜数字游戏

  1. 目标数字:
    系统随机生成一个预设范围内的整数(如1-10)。
  2. 控制台输入输入:
    输入自己猜测的数字。
  3. 提示:
    • 如果猜测的数字 小于 目标,提示“猜小了”。
    • 如果猜测的数字 大于 目标,提示“猜大了”。
    • 如果猜测的数字 等于 目标,提示“猜对了”,游戏结束。

思路:对于该题目,我们发现,首先需要随机一个数字出来,可以导入库random来随机,同时我们需要一直猜数字,知道我们猜对了,所以这个时候就需要while循环来判断条件。最后根据不同的数字提示不同的范围。这个时候就需要if。所以我们可以写出代码。

点击查看代码
import randomnumber = int(random.randint(1,10))
gass_number = int(input("请输入你所猜测的数字:\n"))
while gass_number != number:if gass_number > number:print("猜大了")gass_number = int(input("请重新输入你所猜测的数字:\n"))else:print("猜小了")gass_number = int(input("请重新输入你所猜测的数字:\n"))
print("恭喜你猜对了")

5.2 计算每一位数字和

首先对于一个数字我们怎么取出它的每一位呢?其实可以使用%以及//,通过对10进行取余和取整的方法来获得每一位数字。所以这题我们就可以写代码

点击查看代码
n = 1243
sum_n = 0
while n > 0:sum_n += n % 10   #取余得到个位数print(n)n //= 10    #取整得到其余位数print(n)
print(sum_n)

5.3 打印九九乘法表

这个就不用过多阐述,只是一个循环的嵌套。

点击查看代码
for i in range(1,10):for j in range(1,i+1):print(str(i)+"x"+str(j)+"="+str(i*j),end = " ")print()

5.4 编写程序,输入一个正整数,计算并输出它的阶乘。

思路:我们可以通过定义一个初始值 1,在 1 的基础上进行乘我们的正整数来获得最终值。

点击查看代码
number = int(input("请输入一个整数:"))
result = 1
while number!=0 :result *= numbernumber -= 1
print(result)

5.5 设计"明七暗七游戏” 程序

在 1- 99 之间的数字中,如果数字 包含 7 或者是 7 的倍数,则输出"过...", 否则输出 具体的数字。
思路:只需使用or来判断是否达成十位数或个位数上是否存在7即可

点击查看代码
for i in range(1,100):if i%10 == 7 or i // 10 == 7:continueelse:print(i)

5.6 猴子吃桃

猴子第一天摘下若干个桃子,当即吃了一半,结果不过瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,结果不过瘾又多吃了一个。以后每天早上都吃了前一天剩下的一半再加一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
思路:进行逆推,第十天只剩下一个,那么第九天就是(1+1)* 2即四个,然后第八天(2+1) * 2即六个……以此类推算出第一天有多少个,所以写出程序

点击查看代码
tao_zi = 1
for i in range(1,10):tao_zi = (tao_zi + 1) * 2
print("第一天桃子的数量为:",tao_zi)
http://www.hskmm.com/?act=detail&tid=29493

相关文章:

  • 卖萌求 AccessKey
  • 详细介绍:【Linux】线程控制
  • 初识pytorch:关于数据展示的组件tensorboard
  • win11家庭版升级到专业版教程,专业版改为家庭版教程
  • 计网思维导图总结
  • 如何下载不同版本的像素地牢
  • 一生一芯学习:多道程序 yield-os.c
  • 速通ACM省铜第十六天 赋源码(Sigma Cubes和Find Permutation 2和Rotate and Sum Query) - 教程
  • Linux操作系统扫盲汇总
  • ABC round 427
  • 卸载驱动模块,内核崩溃排查调试记录
  • 详细介绍:游戏引擎以及游戏开发
  • springboot大学校园旧物捐赠网站(代码+数据库+LW) - 详解
  • DropLoRA 论文浅读:通过动态子空间学习突破 LoRA 的性能瓶颈
  • python基础知识
  • switch语句的简单应用
  • 操作系统CPU和内核思维导图总结
  • defold游戏引擎与lua(teal)编程语言
  • 03 数值类型拓展
  • python如何引用变量的名称
  • Python GIL与No-GIL技术详解
  • fuse.js前端搜索简单使用的三个案例
  • 题解:AT_abc288_h [ABC288Ex] A Nameless Counting Problem
  • 2025 年 CBN 砂轮源头厂家最新推荐榜单:专业实力与客户满意度全景解析及选购指南
  • JDK安装和卸载
  • Python定义一个User类的基本写法
  • 10.12 CSP-S模拟30 改题记录
  • 编译GreatSQL with RocksDB引擎
  • ubuntu源码编译指定版本make
  • 【LeetCode】274. H 指数