首页 > 编程语言 >程序猿大战Python——流程控制——其他控制语句

程序猿大战Python——流程控制——其他控制语句

时间:2024-06-12 12:59:11浏览次数:26  
标签:语句 控制 temp Python break while 循环 print

for循环

==目标:==掌握for循环的使用。

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

for语法:

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

说明:

序列指的是能被循环处理的数据类型,比如列表、字符串等。

 

接着,来看一下for循环里常见的序列range()函数。

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

说明:

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

例如,一起来完成:

(1)使用for循环格式来编写程序;

(2)输出0 ~ 4之间的数字,可使用range();

(3)循环输出itheima中的单个字符,且当正常执行结束后,输出:已循环结束;

(4)执行程序,观察效果。

# 1.0-4
# for temp in range(0,5):
for temp in range(5):
    print(temp)
# 2.itheima
# for temp in "itheima":
#     print(temp)
# 3.else
# for temp in "itheima":
#     print(temp)
# else:  # 原则: for语句中能正常执行完所有才会执行else   break
#     print("已循环执行结束.")
​
# *4.数字不是序列
# for temp in 100:  # 唯一??  哈希/散列
#     pass
# iterator
# iterable   # 扩展: 迭代、循环、遍历  ====>循环

==总结:==

(1)for与while循环功能类似,且都能完成反复多次执行的效果;

(2)注意:for可以配合else关键字一起使用,这句话正确吗?==A、正确==;B、错误。

嵌套循环

==目标:==了解嵌套循环的使用。

当在while循环内,再包含一个while循环时,则称为嵌套循环。

通俗地说,嵌套循环就是指外层有一个循环,里面再嵌套一个内层循环。

说明:

也可以使用两个for语句形成嵌套语句。

嵌套循环的语法:

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

说明:

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

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

我们已知道,print()输出函数有自动换行的效果,原因是底层源码设置了默认值\n。

函数名含义
print(args, end="\n")用于输出信息内容,默认有换行效果。

说明:

若要取消换行效果,只需把end值修改为其他内容。

一起看看一个统计嵌套循环的执行次数的案例。

请观察代码,并思考:执行次数为多少?

i = 0
while i<3:  # 外层循环
    j = 0
    while j<5:  # 内层循环
        print("Hello World...")
        j += 1
    i += 1

例如,一起来完成:

(1)使用嵌套循环来完成程序;

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

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

==总结:==

(1)可以使用for或while循环完成嵌套循环,这句话正确吗?==A、正确==;B、错误;

(2)注意:在实际应用中,循环、遍历、迭代,这三个词,都可以表示循环的含义。[思考]

==思考:==例如,一起来完成:

(1)使用嵌套循环来完成程序;

(2)动手实践一个九九乘法表的显示效果。

# 行
i = 1
while i <= 9:
    # 列
    j = 1
    # while j <= 9:
    while j <= i:
        print(f"{j}*{i}={i*j}",end="\t")
        j += 1
    print("")
    i += 1

break语句

==目标:==掌握break语句的使用。

break语句主要是用于终止某个循环语句块的执行。

break语法:

循环语句块
    ……
    break
其他语句

说明:

break会终止循环的执行。

例如,一起来完成:

(1)一次长跑比赛中,体育老师说:本次长跑总共跑50圈,如果有同学跑到第10圈时,感到身体不适,就直接退出比赛;

(2)使用while循环和break模拟长跑效果。

# 1.循环
i = 1
while i <= 50:
    print(f"正在跑第{i}圈...")
    # 2.判断
    if i == 10:
        print("身体不适,直接退出比赛...")
        # 3.退出
        break   # break: 终止   跳过当前循环的整个循环
    i += 1

==总结:==

(1)对于程序里的break,可以简单的理解为()的意思;==A、终止==;B、中断

(2)注意:break语句用于跳出当前的整个循环。

continue语句

==目标:==了解continue语句的简单使用。

continue语句不常使用,表示用于跳过某个循环语句块的一次执行,然后继续执行下一轮的循环。

continue语法:

循环语句块
    ……
    continue
其他语句

说明:

continue会中断循环的一次执行。

例如,一起来完成:

(1)请在输出itheima的单个元素时,如遇字母e,直接跳过且不输出;[后字母]

(2)使用for循环和continue模拟跳过输出的效果。

# 1.定义变量、for语句
strs = "itheima"
for temp in strs:
    print("-----------------------")
    # 2.判断
    if temp == "e":
        # 3.跳过一次执行, 并进入下一次循环
        continue
    print(temp)

==总结:==

(1)continue语句很少使用,表示的是跳过当前循环的一次循环,然后会继续下一轮的循环执行;

(2)注意:break和continue语句只能应用在循环语句中,这句话正确吗?==A、正确==;B、错误。

猜拳游戏案例

随机数的处理

==目标:==了解如何生成随机数?

要完成猜拳游戏程序的编写,优先需要知道怎么生成随机数。

注意:在Python中,要获取随机数值,可以使用生成随机数的random模块:

# 导入模块
import random

random模生成随机数的函数:

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

说明:

能同时取值a和b。

例如,一起来完成:

(1)使用random模块来生成一个0-5之间的随机数;

(2)生成一个50-100之间的随机数值;

(3)执行程序,观察效果。

==总结:==

(1)若要生成随机数,可以使用Python的()库;==A、random==;B、math;

(2)注意:当使用randint(a, b)生成随机数时,能同时取值a和b。

猜拳游戏代码编写

==目标:==完成猜拳游戏的代码编写。

首先,一起来了解一下:猜拳游戏规则。有:

(1)玩家输入自己要出的拳,例如石头(1)、剪刀(2)、布(3);

(2)电脑随机出拳,例如电脑可以出:石头、剪刀、布的任意一个;

(3)猜拳游戏的比较胜负规则是:石头能赢剪刀、剪刀能赢布、布能赢石头。

例如,根据游戏规则,一起来完成猜拳游戏的代码编写。

操作步骤:

(1)显示操作界面:石头1  剪刀2  布3
(2)玩家出拳;
(3)电脑要出拳;
(4)判断玩家
    胜利:玩家1  电脑2;  玩家2  电脑3;  玩家3  电脑1;
    平局:玩家1  电脑1;  玩家2  电脑2;  玩家3  电脑3;
    失败:另外的。
import random
​
# 1.显示界面
print("=========猜拳小游戏V1.0===========")
# 5.重复
while True:
    # 2.玩家出拳
    print("可以选择出拳的方式有:")
    print("\t(1)石头")
    print("\t(2)剪刀")
    print("\t(3)布")
    player = int(input("请输入你的出拳:"))
    # 3.电脑
    computer = random.randint(1, 3)
    # 4.判断
    if (player == 1 and computer == 2) or (player == 2 and computer == 3) or (player == 3 and computer == 1):
        print("恭喜你,赢了~~")
    elif player == computer:
        print("平局!!")
    else:
        print("失败了,洗洗手再来一把!!!")
# **6.扩展
"""
    1.玩家和电脑的出拳方式没显示, 该怎么显示出来呢?
    2.想要退出游戏,该怎么办?
"""

==总结:==

(1)在编程时,可以综合运用多个简单知识,并形成一个复杂的程序;

(2)注意:在编写程序前,建议一定要先写一写完成程序的操作步骤。

标签:语句,控制,temp,Python,break,while,循环,print
From: https://blog.csdn.net/weixin_65694308/article/details/139553922

相关文章

  • Centos7.9安装Python3.8.16解决yum无法使用问题
    Centos7.9安装Python3.8.16解决yum无法使用问题文章目录前言一、前期准备1.下载到新建目录2.安装依赖二、编译1.解压2.编译安装3.建立命令软链接3-1.查看默认的python及新安装的python3都安装在哪?3-2.修改python3的软链接3-3.修改pip的软链接三、修复yum1.查看python......
  • 【Python】成功解决ModuleNotFoundError: No module named ‘PyQt5‘
    【Python】成功解决ModuleNotFoundError:Nomodulenamed‘PyQt5’ 下滑即可查看博客内容......
  • 【Python】一文向您详细介绍 sys.argv
    【Python】一文向您详细介绍sys.argv 下滑即可查看博客内容......
  • 网络访问控制与无线网络安全
    文章目录网络访问控制概念与特点组成元素EAP协议EAPOL/802.1x无线网络安全802.11i(无线局域网安全)服务802.11i(无线局域网安全)流程网络访问控制概念与特点网络访问控制(NAC)是对网络进行管理访问的一个概括性术语。NAC对用户进行认证并决定其权限。NAC可以检......
  • 流畅的python--第十一章 符合 Python 风格的对象
    一个库或框架是否符合Python风格,要看它能不能让Python程序员以一种简单而自然的方式执行任务。——MartijnFaassenPython和JavaScript框架开发者得益于Python数据模型,自定义类型的行为可以像内置类型那样自然。实现如此自然的行为,靠的不是继承,而是鸭子类型:只需按照......
  • pythontest4
    fromcollectionsimportOrderedDictdeflru_simulation(num_blocks,page_sequence):#初始化LRU缓存cache=OrderedDict()#缺页计数器page_faults=0#遍历访问页面序列forpageinpage_sequence:#检查页面是否已在缓存中ifp......
  • pythontest3
    defkaprekar_operation(n):"""对四位数n执行卡普耶卡操作:1.将n的各个数字重新排列成最大的数和最小的数。2.用最大的数减去最小的数。3.返回结果。"""digits=sorted([int(digit)fordigitinstr(n)])max_number=int(''.join(map(str,d......
  • pythontest1
    importitertoolsdefpermutations_combinations(n,m,letters):#排列序列permutations=list(itertools.permutations(letters,m))permutation_output=[''.join(permutation)forpermutationinpermutations]#组合序列,按字母升序排列combination......
  • Python学习笔记5:入门知识(五)
    引言距离上次更新Python的学习笔记,有个四五天,主要原因有两个:一是忙,没有时间,第二个就是之前学的路线,已经到头了,我找不到下面学习路线的资料。主要说下第二点是主要原因。我为啥明知道这个只能到入门一点点还用这份资料?主要还是因为大佬入门知识写的好,我学起来感觉不吃力,有......
  • 一文带你搞清楚Python的多线程和多进程
    本文分享自华为云社区《Python中的多线程与多进程编程大全【python指南】》,作者:柠檬味拥抱。Python作为一种高级编程语言,提供了多种并发编程的方式,其中多线程与多进程是最常见的两种方式之一。在本文中,我们将探讨Python中多线程与多进程的概念、区别以及如何使用线程池与进程池来......