Python for 循环

Python 中的 for 循环

Python 中的 for 循环是一个迭代函数。如果你有一个类似列表的序列对象,你可以使用 for 循环来迭代列表中包含的项目。

for 循环的功能与其他多个编程语言中看到的功能并没有太大的不同。

在本文中,我们将详细探讨 Python 中的 for 循环,并学习如何迭代不同的序列,包括列表、元组等。此外,我们还将学习如何使用 break 和 continue 语句来控制循环的流程。

Python for 循环的基本语法

Python 中 for 循环的基本语法如下所示。

for iterator_variable in sequence_name:Statements. . .Statements

让我更好地解释一下 Python for 循环的语法。

  • 语句的第一个单词以 关键字 “for” 开头,表示 for 循环的开始。
  • 然后是 迭代变量,它在序列上进行迭代,并可以在循环内部用于执行各种功能。
  • 接下来是 Python 中的 “in” 关键字,告诉迭代变量在序列中循环。
  • 最后,我们有 序列变量,可以是列表、元组或任何其他类型的迭代器。
  • 循环的语句部分是你可以使用迭代变量进行各种操作的地方。

1. 使用 for 循环打印字符串的各个字母

Python 字符串是一系列字符。如果在你的任何编程应用程序中,你需要逐个遍历字符串的字符,你可以在这里使用 for 循环。

下面是如何实现的。

word="anaconda"
for letter in word:print (letter)

输出:

a
n
a
c
o
n
d
a

这个循环之所以有效,是因为 Python 将 “字符串” 视为一系列字符,而不是将字符串作为一个整体来看待。

2. 使用 for 循环遍历 Python 列表或元组

列表和元组是可迭代对象。让我们看看如何循环遍历这些对象中的元素。

words= ["Apple", "Banana", "Car", "Dolphin" ]
for word in words:print (word)

输出:

Apple
Banana
Car
Dolphin

现在,让我们继续并学习如何循环遍历元组的元素。

nums = (1, 2, 3, 4)sum_nums = 0for num in nums:sum_nums = sum_nums + numprint(f'Sum of numbers is {sum_nums}')# 输出
# Sum of numbers is 10

3. 嵌套 Python for 循环

当一个 for 循环位于另一个 for 循环内部时,它被称为嵌套 for 循环。嵌套 for 循环有多种应用。

考虑上面的列表示例。for 循环从列表中逐个打印单词。但是,如果我们想要逐个打印列表中每个单词的各个字符呢?

这就是嵌套 for 循环更好地发挥作用的地方。第一个循环(父循环)将逐个单词进行循环。第二个循环(子循环)将循环遍历每个单词的字符。

words= ["Apple", "Banana", "Car", "Dolphin" ]
for word in words:# 这个循环从列表中获取单词print ("以下行将打印 "+word+" 的每个字母")for letter in word:# 这个循环从单词中获取字母print (letter)print("") # 这个打印用于打印一个空行

输出

!python 嵌套 for 循环示例

4. 使用 range() 函数的 Python for 循环

Python 的 range() 是内置函数之一。当你想让 for 循环运行特定次数,或者需要指定要打印的对象范围时,range 函数非常有效。考虑以下示例,我想打印数字 1、2 和 3。

for x in range(3):print("Printing:", x)# 输出# Printing: 0
# Printing: 1
# Printing: 2

range 函数除了起始和结束之外,还接受另一个参数。这就是 步长参数。它告诉 range 函数在每次计数之间要跳过多少个数字。

在下面的示例中,我使用数字 3 作为步长,你可以看到输出的数字是前一个数字 + 3。

for n in range(1, 10, 3):print("Printing with step:", n)

5. 使用 for 循环的 break 语句

break 语句用于提前退出 for 循环。当满足特定条件时,它用于中断 for 循环。

假设我们有一个数字列表,我们想要检查一个数字是否存在。我们可以遍历数字列表,如果找到数字,就跳出循环,因为我们不需要继续遍历剩余的元素。

在这种情况下,我们将使用 Python 的 if else 条件与我们的 for 循环。

nums = [1, 2, 3, 4, 5, 6]n = 2found = False
for num in nums:if n == num:found = Truebreakprint(f'List contains {n}: {found}')# 输出
# List contains 2: True

6. 使用 for 循环的 continue 语句

我们可以在 for 循环中使用 continue 语句来跳过特定条件下的 for 循环体执行。

假设我们有一个数字列表,我们想要打印正数的总和。我们可以使用 continue 语句来跳过负数的 for 循环。

nums = [1, 2, -3, 4, -5, 6]sum_positives = 0for num in nums:if num < 0:continuesum_positives += numprint(f'Sum of Positive Numbers: {sum_positives}')

6. 带有 else 块的 Python for 循环

我们可以在 Python for 循环中使用 else 块。只有当 for 循环没有被 break 语句终止时,else 块才会被执行。

假设我们有一个函数,如果所有数字都是偶数,则打印数字的总和。

我们可以使用 break 语句来终止 for 循环,如果存在奇数。我们可以在 else 部分打印总和,这样只有在 for 循环正常执行时才会打印。

def print_sum_even_nums(even_nums):total = 0for x in even_nums:if x % 2 != 0:breaktotal += xelse:print("For loop executed normally")print(f'Sum of numbers {total}')# 这将打印总和
print_sum_even_nums([2, 4, 6, 8])# 由于序列中存在奇数,这不会打印总和
print_sum_even_nums([2, 4, 5, 8])# 输出# For loop executed normally
# Sum of numbers 20

结论

Python 中的 for 循环与其他编程语言非常相似。我们可以使用 break 和 continue 语句来改变执行流程。然而,在 Python 中,我们还可以在 for 循环中使用可选的 else 块。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/678345.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

django中如何使用mysql连接池

一&#xff1a;介绍 在Django中使用MySQL时&#xff0c;通常情况下&#xff0c;Django的数据库层会为你管理数据库连接。Django的数据库接口是线程安全的&#xff0c;这意味着它会自动为每个线程创建和管理数据库连接。在大多数情况下&#xff0c;你不需要手动创建线程池来管理…

用数学思维去理解时间复杂度的计算

视频讲解过程 一.关于时间复杂度的数学理解 设要处理的数据总量为x,x足够大&#xff0c;为了某个目的&#xff1a;排序、查询、删除、添加之类&#xff0c;需要消耗的计算次数是y。则x和y存在以下关系&#xff1a; y ax b;(a是系数&#xff0c;b是常数) -------------------…

Hive窗口函数详解

一、 窗口函数知识点 1.1 窗户函数的定义 窗口函数可以拆分为【窗口函数】。窗口函数官网指路&#xff1a; LanguageManual WindowingAndAnalytics - Apache Hive - Apache Software Foundationhttps://cwiki.apache.org/confluence/display/Hive/LanguageManual%20Windowing…

【Android】使用Android Studio运行Hello World项目

文章目录 1. JDK的安装与配置2. Android Studio的安装3. 运行Hello World项目3.1 新建项目3.2 修改项目配置3.2.1 修改UI界面3.2.2 配置 Android SDK 3.3 添加并运行虚拟设备3.4 运行项目 1. JDK的安装与配置 想要使用Android Studio&#xff0c;必须先配置Java环境&#xff0…

最大字段和(洛谷)

题目 原题 题目描述 给出一个长度为 n n n 的序列 a a a&#xff0c;选出其中连续且非空的一段使得这段和最大。 输入格式 第一行是一个整数&#xff0c;表示序列的长度 n n n。 第二行有 n n n 个整数&#xff0c;第 i i i 个整数表示序列的第 i i i 个数字 a i a_i a…

使用 Express.js 和 MySQL 构建 Web 应用程序

Express.js 是一个流行的 Node.js Web 框架&#xff0c;而 MySQL 是一种广泛使用的关系型数据库。本文将介绍如何结合使用 Express.js 和 MySQL 构建功能强大的 Web 应用程序。 一、安装和设置 首先&#xff0c;确保您已经安装了 Node.js 和 MySQL。然后&#xff0c;通过以下…

hook函数——useRef

useRef useRef 是一个 React Hook&#xff0c;它能帮助引用一个不需要渲染的值。也就是说useRef可以存储一个值&#xff0c;但是不被组件渲染&#xff0c;仅仅只是引用&#xff0c;主要包括两个方面&#xff0c;例如使用ref引用一个值&#xff0c;使用ref引用一个dom节点&…

软件价值12-射箭游戏

射箭游戏&#xff0c;按空格键发射&#xff0c;打击移动靶&#xff0c;左上角显示成绩状态。 代码&#xff1a; import pygame import sys import random# 初始化Pygame pygame.init()# 设置窗口大小 SCREEN_WIDTH 800 SCREEN_HEIGHT 600 screen pygame.display.set_mode((…

golang 集成sentry:PostgreSQL

本文介绍通过 pgx库集成sentry&#xff0c; pgx 特点是速度快&#xff0c;可以完全控制&#xff0c;并且支持所有 postgres 数据类型。 pgx地址&#xff1a; https://github.com/jackc/pgx 最简单的接入方式是自定义一个logger&#xff0c; 然后注入到pgx&#xff0c; 完整示…

【Linux】信号概念与信号产生

信号概念与信号产生 一、初识信号1. 信号概念2. 前台进程和后台进程3. 认识信号4. 技术应用角度的信号 二、信号的产生1. 键盘组合键2. kill 命令3. 系统调用4. 异常&#xff08;1&#xff09;观察现象&#xff08;2&#xff09;理解本质 5. 软件条件闹钟 一、初识信号 1. 信号…

任务管理软件的实用价值及优选推荐:提升工作效率的利器

任务管理软件是一种用于组织任务、将任务分配给个人并监控其进展的软件。该软件可以帮助确保任务在预算内按时完成。它在协同工作环境中特别有用&#xff0c;在这种环境中多人在处理需要跟踪和监视的任务。无论是初创公司、中小型企业还是大型组织&#xff0c;都可以从任务管理…

【Linux】make和Makefile

目录 make和Makefile make和Makefile 我们使用vim编辑器的时候&#xff0c;在一个文件里写完代码要进行编译&#xff0c;要自己输入编译的指令。有没有一种可以进行自动化编译的方法——makefile文件&#xff0c;它可以指定具体的编译操作&#xff0c;写好makefile文件&#x…

电磁兼容故障整改-辐射发射超标

设备的辐射于扰发射超标有两种可能:一种是设备外壳的屏蔽性能不完善;另一种是射频干扰经由电源线和其他线缆逸出。判断方法是拔掉不必要的电线和电源插头&#xff0c;或者将电缆长度减小至最短&#xff0c;继续做试验&#xff0c;如果没有任何改善迹象&#xff0c;则应怀疑是设…

Peter算法小课堂—单调队列

祝大家新年快乐&#xff01; 今天这一次有点简单。 单调队列有两个要点&#xff0c;一个是单调&#xff0c;另一个就是我们的队列。 听到队列&#xff0c;我相信大家一定会想到它的好朋友BFS吧。但是……今天……可……没……那么……简单哦。 西佳佳偶像天团1 题目描述 …

滑动窗口的最大值

题目 239. 滑动窗口最大值 - 力扣&#xff08;LeetCode&#xff09; 思路 使用一个队列充当不断滑动的窗口&#xff0c;每次滑动记录其中的最大值&#xff1a; 如何在 O(1) 时间计算最大值&#xff0c;只需要一个特殊的数据结构「单调队列」&#xff0c;push 方法依然在队尾添…

Edge浏览器-常用快捷键

按键组合作用Ctrl Shift I开发人员工具Ctrl E定位到 空地址栏Ctrl L定位到 地址栏Ctrl Shift B显示或隐藏 收藏夹栏Ctrl Shift O打开收藏夹(搜索)Ctrl T打开一个新标签页Ctrl W关闭当前标签页Ctrl Shift T重新打开刚才关闭的标签页Ctrl Tab切换到下一个标签页Ctrl…

分布式搜索引擎 elasticsearch

分布式搜索引擎 elasticsearch 第一部分 1.初识elasticsearch 1.1.了解ES 1.1.1.elasticsearch的作用 elasticsearch是一款非常强大的开源搜索引擎&#xff0c;具备非常多强大功能&#xff0c;可以帮助我们从海量数据中快速找到需要的内容 例如&#xff1a; 在GitHub搜索…

【EAI 016】VIMA: General Robot Manipulation with Multimodal Prompts

论文标题&#xff1a;VIMA: General Robot Manipulation with Multimodal Prompts 论文作者&#xff1a;Yunfan Jiang, Agrim Gupta, Zichen Zhang, Guanzhi Wang, Yongqiang Dou, Yanjun Chen, Li Fei-Fei, Anima Anandkumar, Yuke Zhu, Linxi Fan 作者单位&#xff1a;Stanfo…

【Spring源码分析】Spring的启动流程源码解析

阅读此需阅读下面这些博客先【Spring源码分析】Bean的元数据和一些Spring的工具【Spring源码分析】BeanFactory系列接口解读【Spring源码分析】执行流程之非懒加载单例Bean的实例化逻辑【Spring源码分析】从源码角度去熟悉依赖注入&#xff08;一&#xff09;【Spring源码分析】…

2 月 7 日算法练习- 数据结构-并查集

并查集 并查集是一种图形数据结构&#xff0c;用于存储图中结点的连通关系。 每个结点有一个父亲&#xff0c;可以理解为“一只伸出去的手”&#xff0c;会指向另外一个点&#xff0c;初始时指向自己。 一个点的根节点是该点的父亲的父亲的的父亲&#xff0c;直到某个点的父亲…