IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> python精讲day03 -> 正文阅读

[数据结构与算法]python精讲day03

循环

请思考: 找到所有水仙花数?
在这里插入图片描述

while 循环

语法

while 条件:
	循环体

在这里插入图片描述

i = 1
while i<=10:
    print(i)
    i+=1 # 不要忘记每次维护进行自增

计算 1 ~100 的累加和

i = 1
sums = 0 # 袋子 存储累加和
while i<=100:
    # print(i)
    sums += i;
    i+=1 # 不要忘记每次维护进行自增
print(f"sums = {sums}")

质数判断器

# 屏幕中输入一个数, 判断这个数是不是质数(素数)
# 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数
num = int(input('请输入一个大于1的自然数:'))
i = 2
count = 0
while i < num:
    if num % i == 0:
        count += 1
    i += 1
if count == 0:
    print(f'{num}是质数')
else:
    print(f'{num}不是质数')

中断循环

break和continue

  • break终止本层(当前层)循环
  • continue终止本次循环(遇到continue之后的代码本次不会被执行了), 执行下一次循环

# 累加和大于 1000 就停止并输出
i = 0
sums = 0
while i <= 100:
    if sums > 1000:
        break
    sums += i
    i += 1
print(f"sums = {sums}")
# 用 continue 求 1 ~ 100 的所有奇数和
print('--'*20)
i = 0
sums = 0
while i <= 100:
    if i%2 == 0:
        i += 1
        continue
    sums += i
    i += 1
print(f'{sums}')

循环嵌套

循环里面还有循环(两层最常用)

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

在这里插入图片描述
外层循环负责打印多少行, 里侧循环负责当前行具体的情况

打印**

打印 5 x 6 的星星

* * * * * * 
* * * * * * 
* * * * * * 
* * * * * * 
* * * * * * 
i = 0
while i < 5:
    j = 0
    while j < 6:
        print("* ", end='')
        j += 1
    # 换行
    print()
    i += 1


* 
* * 
* * * 
* * * *  
* * * * *
* * * * * *  
i = 0
while i < 6:
    j = 0
    while j <= i:
        print("* ", end='')
        j += 1
    # 换行
    print()
    i += 1

在这里插入图片描述

i = 1
while i <= 9:
    j = 1
    while j <= i:
        print(f'{j} x {i} = {i*j}', end='\t')
        j += 1
    print()
    i += 1

在这里插入图片描述

打印 2 ~ 100 之间所有的素数

num = 2
while num <= 100:
    i = 2
    count = 0
    while i < num:
        if num % i == 0:
            count += 1
            break
        i += 1
    if count == 0:
        print(f'{num} ', end='')
    num += 1

在这里插入图片描述

for 循环

for 临时变量 in 序列:
	重复执?的代码1
	重复执?的代码2
 	......

迭代序列

for i in 'eric':
    print(i)

求累加和

sums = 0
# 1 ~ 100 累加和
# range(start, end, step)  左闭右开, step默认是1
# for i in range(1, 101, 3):
for i in range(1, 101):
    # print(i)
    sums += i
print(sums)

break和continue


# 累加和大于 1000 就停止并输出
sums = 0
for i in range(1, 101):
    if sums > 1000:
        break
    sums += i
print(sums)
# 用 continue 求 1 ~ 100 的所有奇数和
sums = 0
for i in range(1, 101):
    if i%2 == 0:
        continue
    sums += i
print(sums)

while else

while 条件:
	条件成?重复执?的代码
else:
	循环正常结束之后要执?的代码

所谓else指的是循环正常结束之后要执?的代码,即如果是break终?循环的情况,else下?缩进
的代码将不执?。因为continue是退出当前?次循环,继续下?次循环,所以该循环在continue控制下是可以正常
结束的,当循环结束后,则执?了else缩进的代码。

from random import randint
computer = randint(1, 100)
print(computer)
game_count = int(input("请投币"))
while game_count > 0:
    num = int(input("请输入要猜的数字 1 ~ 100"))
    game_count -= 1
    if num > computer:
        print("猜大了")
    elif num < computer:
        print("猜小了")
    else:
        print("恭喜你猜对了")
        break
else:
    print("你的币子用光了!!!")


for else

作业

完成 for 版本的 循环嵌套
for else 版本的猜数字游戏

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2022-03-12 17:47:47  更:2022-03-12 17:50:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 13:49:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码