【Python学习(六)——While、for、循环控制、指数爆炸】

Python学习(六)------While、for、循环控制、指数爆炸

本文介绍了While、for、循环控制、指数爆炸,仅作为本人学习时记录,感兴趣的初学者可以一起看看,欢迎评论区讨论,一起加油鸭~~~

心中默念:Python 简单好学!!!

(有其他编程语言基础,所以记录的可能对初步接触编程的同学不太友好,有问题欢迎留言)

前言

循环结构:重复做的事情,如太阳东升西落。

While循环

  • 循环的作用就是让指定的代码重复的执行
  • 最常用的场景就是让执行的代码按照指定的次数重复执行
python 复制代码
# 初始条件
n = 0
while n < 5:
    print('hello Python')
    n += 1

# 高斯求和
n = 1
result = 0
while n <= 100:
    result += n
    n += 1
print(result)

for循环

python 复制代码
for i in range(5):
    print('hello')

# 高斯求和
result = 0
for i in range(101):
    result += i
print(result)

# 1!+ 2!+ 3!+。。。+n!
a = 1
n = 20
result = 0
for i in range(n + 1):
    if i > 0:
        a = a * i
        result = result + a
print(result)

循环控制

break

退出循环。(只能跳出距离最近的for或者while循环)------在循环过程中,如果某一个条件满足后,不再希望循环继续执行,可以使用break退出循环。

python 复制代码
while True:
    print(111)
    name = input('请输入你的名字')
    if name == 'bb':
        print('bb欢迎回家')
        break
    else:
        print('bb不在家,你一会再来吧')

for i in range(10):
    if i > 0 and i % 3 == 0:
        print(i)
        break

# 判断一个数字n是否是质数(除了1和本身不能被其他整除)
n = 7
num = 0
for i in range(n):
    if i > 1 and n % i == 0:
        num = num + 1
if num == 0:
    print('%d是一个质数' % n)
else:
    print('%d不是一个质数' % n)

continue

跳出本次循环后面的剩余语句,然后继续下一次循环(只能跳过距离最近的for或者while循环)

python 复制代码
for i in range(5):
    if i == 2:
        continue
    print(i)  

与else结合

else的下级代码:没有通过break退出循环,循环结束后,会执行的代码。

pass

  • 作用:当语句要求不希望任何命令或代码来执行时使用
  • pass语句表示一个空操作,在执行时没有任何的响应,pass的位置最终应该有代码来执行,只不过暂时写不出来
  • 可以使用在流程控制和循环语句中

指数爆炸

经典案例:国王数麦粒

python 复制代码
# 纸的厚度问题
n = 0.1
w = n
for i in range(50):
    w *= 2
print(w)

# 国王麦粒
# 1:1 2:2 3:4 4:8
g = 1  # 当前格子应该放的麦粒数
total = 0  # 总麦粒数
a = 0  # 棋盘的格子数量
while a <= 100:
    total += g  # 计算当前的总麦粒数
    a += 1  # 走到下一个格子
    g *= 2  # 当前格子应该放的麦粒数*2
print('在放满了%d个格子以后,总的麦粒数是%d' % (a-1, total))

# 人生的复利(1+0.01)
day = 0
total = 1
while day < 365:
    total *= 1.01
    day += 1
print(total)
相关推荐
譕痕1 小时前
stripe 实例
java·开发语言·stripe·checksession
Swilderrr1 小时前
论文精读:《Directory-Aware Query and Maintenance in Vector Databases》
笔记·学习
kkkkkkkkkk_Z1 小时前
新手自学嵌入式 | 学习日记:LCD显示原理、PWM控制、电容触摸屏(GT9147)驱动开发与项目实战
驱动开发·学习
墨子夕1 小时前
设计模式——Java × Python 双语言精讲 · 23 个经典模式 + 现代演进(前言篇)
java·开发语言·设计模式
_菜鸟果果1 小时前
高德地图 JS API 2.0 在国产 Linux/ARM 电脑上渲染失败 的排查与解决
linux·开发语言·javascript
昂好的day2 小时前
VisionMaster(VM) 标定工具详解(上):为什么必须标定 + 九点标定手眼标定
开发语言·数码相机·c#
严谨的麻辣烫2 小时前
静态代理 IP 的出口一致性如何验证?Python 请求检测与异常排查
开发语言·python·http·网络安全
LXT7122 小时前
每日英语一读|为什么夏天的雷雨,总爱在傍晚出现?
深度学习·学习
知识分享小能手2 小时前
C学习教程,从入门到精通,C语言文件 — 完整知识点详解(14)
c语言·网络·学习
我命由我123452 小时前
5-1.Python 编码进阶 - 函数进阶(参数、返回值、递归、函数作为参数传递、lambda 匿名函数)
java·服务器·数据库·后端·python·java-ee·python3.11