0x09 - 详谈Python循环结构

2024-02-11 16:58
文章标签 python 结构 循环 详谈 0x09

本文主要是介绍0x09 - 详谈Python循环结构,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • while
  • for
  • 常用循环算法

目录: 0x00 - Python学习笔记

while

在日常生活中,很多地方要用到循环算法,while是循环算法的关键词之一
示例:我们将 10000 元存入一个年利率为 5% 的银行账户中,求账户余额增长到原来投资额的两倍需要多少年?

# 创建常量变量
INITIAL_BALANCE = 10000.0
RATE = 5.0
TARGET = 2 * INITIAL_BALANCE# 初始化用于循环的变量
balance = INITIAL_BALANCE
year = 0# 计算投资收益翻倍所需年份
while balance < TARGET :year = year + 1interest = balance * RATE / 100balance = balance + interest# 打印结果
print("收益翻倍需要", year, "年")

for

我们常常需要访问字符串中的每个字符,for循环提供了使该过程易于编程的实现方法。

假设要打印一个字符串,每行一个字符。我们需要遍历字符串中的每一个字符,并分别打印他们:

stateName = "CSDN"
for letter in stateName :print(letter)

这里的letterstateName中的每一个字符,我们也可以使用索引来实现

stateName = "CSDN"
for i in range(len(stateName)) :print(stateName[i])

上述方法使用了 range 函数,它的作用是产生连续的数字,他的参数可以是一个,也可以是多个:

>>> for i in range(5) :print(i)0
1
2
3
4
>>> for i in range(2, 5) :print(i)2
3
4
>>> for i in range(1, 5, 2) :print(i)1
3

我们通常使用以下方法来使用for:

for year in range(1, len(year) + 1) :

那我们什么时候用range()
当我们只需要迭代容器内的每一个值得时候,不需要使用range();如果我们需要知道都一个元素在容器中的准确位置时,最好使用range()
容器就是for中的可迭代序列

常用循环算法

##
# 编写程序,求用户输入数据的总和及平均数
## 初始化
total = 0.0
count = 0# 预读取用户指令
inputStr = input("Enter value: ")# 设置哨兵值为空
while inputStr != "" :value = float(inputStr)     # 初始化指令为数字total = total + valuecount = count + 1# 修改读取用户指令inputStr = input("Enter value: ")if count > 0 :average = total / count
else :average = 0.0
print("您输入数字的总和为%f,平均数为%f" % (total, average))
##
# 本程序用于处理用户输入的一系列成绩
# 计算成绩合格的人数和成绩不合格的人数
# 计算平均成绩,查找最高成绩和最低成绩
## 初始化计数器变量
numPassing = 0      # 合格人数
numFailing = 0      # 不合格人数# 初始化用于计算平均成绩的值
total = 0
count = 0# 初始化最高成绩和最低成绩变量
maxGrade = 0.0
minGrade = 100.0    # 默认最高成绩为100# 使用while循环读取成绩
grade = float(input("请输入成绩(-1退出):"))
while grade >= 0.0 :# 递归成绩合格、不合格人数计数器if grade >= 60.0 :numPassing = numPassing + 1else :numFailing = numFailing + 1# 判断成绩是否为最低成绩或最高成绩if grade < minGrade :minGrade = gradeif grade > maxGrade :maxGrade = grade# 把成绩累加到total中total = total + gradecount = count + 1# 读取下一个成绩grade = float(input("请输入成绩(-1退出):"))# 打印结果
if count > 0 :average = total / countprint("平均成绩为:%.2f" % average)print("合格人数为:", numPassing)print("不合格人数为:", numFailing)print("最高成绩为:%.2f" % maxGrade)print("最低成绩为:%.2f" % minGrade)

这篇关于0x09 - 详谈Python循环结构的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/700329

相关文章

使用Python绘制蛇年春节祝福艺术图

《使用Python绘制蛇年春节祝福艺术图》:本文主要介绍如何使用Python的Matplotlib库绘制一幅富有创意的“蛇年有福”艺术图,这幅图结合了数字,蛇形,花朵等装饰,需要的可以参考下... 目录1. 绘图的基本概念2. 准备工作3. 实现代码解析3.1 设置绘图画布3.2 绘制数字“2025”3.3

详谈redis跟数据库的数据同步问题

《详谈redis跟数据库的数据同步问题》文章讨论了在Redis和数据库数据一致性问题上的解决方案,主要比较了先更新Redis缓存再更新数据库和先更新数据库再更新Redis缓存两种方案,文章指出,删除R... 目录一、Redis 数据库数据一致性的解决方案1.1、更新Redis缓存、删除Redis缓存的区别二

python使用watchdog实现文件资源监控

《python使用watchdog实现文件资源监控》watchdog支持跨平台文件资源监控,可以检测指定文件夹下文件及文件夹变动,下面我们来看看Python如何使用watchdog实现文件资源监控吧... python文件监控库watchdogs简介随着Python在各种应用领域中的广泛使用,其生态环境也

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Java调用Python代码的几种方法小结

《Java调用Python代码的几种方法小结》Python语言有丰富的系统管理、数据处理、统计类软件包,因此从java应用中调用Python代码的需求很常见、实用,本文介绍几种方法从java调用Pyt... 目录引言Java core使用ProcessBuilder使用Java脚本引擎总结引言python

python 字典d[k]中key不存在的解决方案

《python字典d[k]中key不存在的解决方案》本文主要介绍了在Python中处理字典键不存在时获取默认值的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录defaultdict:处理找不到的键的一个选择特殊方法__missing__有时候为了方便起见,

Java中switch-case结构的使用方法举例详解

《Java中switch-case结构的使用方法举例详解》:本文主要介绍Java中switch-case结构使用的相关资料,switch-case结构是Java中处理多个分支条件的一种有效方式,它... 目录前言一、switch-case结构的基本语法二、使用示例三、注意事项四、总结前言对于Java初学者

使用Python绘制可爱的招财猫

《使用Python绘制可爱的招财猫》招财猫,也被称为“幸运猫”,是一种象征财富和好运的吉祥物,经常出现在亚洲文化的商店、餐厅和家庭中,今天,我将带你用Python和matplotlib库从零开始绘制一... 目录1. 为什么选择用 python 绘制?2. 绘图的基本概念3. 实现代码解析3.1 设置绘图画

Python pyinstaller实现图形化打包工具

《Pythonpyinstaller实现图形化打包工具》:本文主要介绍一个使用PythonPYQT5制作的关于pyinstaller打包工具,代替传统的cmd黑窗口模式打包页面,实现更快捷方便的... 目录1.简介2.运行效果3.相关源码1.简介一个使用python PYQT5制作的关于pyinstall

使用Python实现大文件切片上传及断点续传的方法

《使用Python实现大文件切片上传及断点续传的方法》本文介绍了使用Python实现大文件切片上传及断点续传的方法,包括功能模块划分(获取上传文件接口状态、临时文件夹状态信息、切片上传、切片合并)、整... 目录概要整体架构流程技术细节获取上传文件状态接口获取临时文件夹状态信息接口切片上传功能文件合并功能小