”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > Python 循环 2

Python 循环 2

发布于2024-11-08
浏览:418

Python Loops 2

大家好!这是 python 循环系列的第二部分。
第 1 部分在这里:
https://dev.to/coderanger08/python-loops-1-5dho

本周,我们将更多地讨论 while 和 for 循环、break 和 pass 语句、范围函数等等。让我们开始吧。

无限循环:

无限循环是指循环无限运行的情况,因为条件始终为真(while)或序列永远不会结束(for)。当终止条件从未满足时,无限循环将永远运行。

count=5
while count>=1:
    print(count)
    count =1

这个while循环是一个无限循环。想想为什么?

从技术上讲,无限循环是一个错误(错误)。您可以通过终止程序或使用break语句来手动停止无限循环。
然而,有时无限循环在很多方面都很有用。

  1. Web服务器和后台服务使用无限循环来不断监听和处理请求。
  2. 游戏中的无限循环使游戏保持运行,更新游戏状态并渲染帧,直到玩家退出。
  3. 命令行界面 (CLI) 使用无限循环重复提示用户输入,直到他们选择退出。

中断语句

要停止无限循环或普通循环,可以使用break语句。

count=1
while count>=1:
    print(count)
    count =1
    if count==5:
        break #this will stop the loop here

>>1
2
3
4

继续声明

Continue 是停止循环的一种稍微不同的方式。通过使用 continue,您可以仅停止或跳过该迭代的循环。循环将从下一次迭代开始再次运行。

flowers=["lily","orchid","rose","jasmine"]
for element in flowers:
   if element=="rose":
       continue #it won't print rose
   print(element)

>>
lily
orchid
jasmine

通过声明

如果稍后我们想在(if/else语句、循环块)中编写代码,则会因为空块而显示错误。在这种情况下,我们可以使用 pass 语句。它将传递该指令并继续下一部分。

  • Pass 语句为空语句。
  • 解释器不会忽略 pass 语句
  • 循环、函数定义、类定义或 if 语句中不允许有空代码。为了避免错误,我们使用 pass 语句。

前任:

Nums=[1,2,3,4,5]
For val in nums:
    Pass    #it will pass the iteration and won't execute anything
#other lines of the code 

Else循环语句:
与 C、CPP 等语言不同,我们可以使用 else for 循环。当“for”或“while”语句的循环条件失败时,则执行“else”中的代码部分。

count = 0
while count 





fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)
else:
    print("The for loop completed without a break.")

如果在 for 循环内执行 break 语句,则跳过“else”部分。请注意,即使存在 Continue 语句,“else”部分也会被执行.

count = 0
while count 



这里,else块没有执行,因为当count为3时,while循环被break语句终止。

范围函数

语法:范围(开始、停止、步长)

  • Range() 生成给定起始整数到终止整数之间的整数。
  • 起始整数是序列的起始编号。不指定的话默认从0开始。
  • 停止参数是上限。 Range() 函数生成直到该数字但不包括该数字的数字。
  • 包含起始编号,但不包含终止编号。
  • 步长是结果中每个数字之间的差异。如果不指定,步长默认值为1。
  • 所有参数(开始、停止、步骤)必须是整数。

Ex: range(1,6) => [1,2,3,4,5] {它生成从 1 到 5 的整数序列,但不是 6}

注意:print(range(1,6))不会打印任何数字。

#printing 1 to 5
For num in range(1,6,1):
    Print(num,end=",")
>>1
2
3
4
5
#printing 5 to 1 backwards:
For num in range(1,6,-1):
    Print(num, end=",")
>>5
4
3
2
1

嵌套循环

嵌套循环是包含在另一个循环中的循环。 “内循环”对于“外循环”的每次迭代都完全运行。

rows=int(input())

for i in range(rows 1):#outer loop
  for j in range(i):#inner loop
    print(i,end=' ')
  print()
>>
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5

这样,我将结束 python 循环。我希望有关“循环”的这个系列可以帮助您快速了解或温习有关该主题的知识。
这里有 3 个需要你解决的 Python 循环问题。解决这些问题并在评论中分享您的解决方案。快乐编码!

问题

  1. 编写一个Python程序,检查给定的字符串是否为回文。(回文是向前和向后读相同的单词或序列)

  2. 编写一个Python程序来检查数字是否是质数。(质数是只能被1和它本身整除的数字)

  3. 显示最多 10 项的斐波那契数列。斐波那契数列是一系列数字,通过将前两个数字相加来找到下一个数字。前两个数字是 0 和 1。

你的任务是编写一个包含前 10 项的斐波那契数列的 python 程序。
(输出:0, 1, 1, 2, 3, 5, 8, 13, 21, 34)

版本声明 本文转载于:https://dev.to/coderanger08/python-loops-2-215g?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 如何使用Regex在PHP中有效地提取括号内的文本
    如何使用Regex在PHP中有效地提取括号内的文本
    php:在括号内提取文本在处理括号内的文本时,找到最有效的解决方案是必不可少的。一种方法是利用PHP的字符串操作函数,如下所示: 作为替代 $ text ='忽略除此之外的一切(text)'; preg_match('#((。 &&& [Regex使用模式来搜索特...
    编程 发布于2025-05-21
  • 版本5.6.5之前,使用current_timestamp与时间戳列的current_timestamp与时间戳列有什么限制?
    版本5.6.5之前,使用current_timestamp与时间戳列的current_timestamp与时间戳列有什么限制?
    在时间戳列上使用current_timestamp或MySQL版本中的current_timestamp或在5.6.5 此限制源于遗留实现的关注,这些限制需要对当前的_timestamp功能进行特定的实现。 创建表`foo`( `Productid` int(10)unsigned not n...
    编程 发布于2025-05-21
  • 左连接为何在右表WHERE子句过滤时像内连接?
    左连接为何在右表WHERE子句过滤时像内连接?
    左JOIN CONUNDRUM:WITCHING小时在数据库Wizard的领域中变成内在的加入很有趣,当将c.foobar条件放置在上面的Where子句中时,据说左联接似乎会转换为内部连接。仅当满足A.Foo和C.Foobar标准时,才会返回结果。为什么要变形?关键在于其中的子句。当左联接的右侧值...
    编程 发布于2025-05-21
  • 如何在GO编译器中自定义编译优化?
    如何在GO编译器中自定义编译优化?
    在GO编译器中自定义编译优化 GO中的默认编译过程遵循特定的优化策略。 However, users may need to adjust these optimizations for specific requirements.Optimization Control in Go Compi...
    编程 发布于2025-05-21
  • 如何实时捕获和流媒体以进行聊天机器人命令执行?
    如何实时捕获和流媒体以进行聊天机器人命令执行?
    在开发能够执行命令的chatbots的领域中,实时从命令执行实时捕获Stdout,一个常见的需求是能够检索和显示标准输出(stdout)在cath cath cant cant cant cant cant cant cant cant interfaces in Chate cant inter...
    编程 发布于2025-05-21
  • Java是否允许多种返回类型:仔细研究通用方法?
    Java是否允许多种返回类型:仔细研究通用方法?
    在Java中的多个返回类型:一种误解类型:在Java编程中揭示,在Java编程中,Peculiar方法签名可能会出现,可能会出现,使开发人员陷入困境,使开发人员陷入困境。 getResult(string s); ,其中foo是自定义类。该方法声明似乎拥有两种返回类型:列表和E。但这确实是如此吗...
    编程 发布于2025-05-21
  • 为什么PYTZ最初显示出意外的时区偏移?
    为什么PYTZ最初显示出意外的时区偏移?
    与pytz 最初从pytz获得特定的偏移。例如,亚洲/hong_kong最初显示一个七个小时37分钟的偏移: 差异源利用本地化将时区分配给日期,使用了适当的时区名称和偏移量。但是,直接使用DateTime构造器分配时区不允许进行正确的调整。 example pytz.timezone(...
    编程 发布于2025-05-21
  • 如何使用Python理解有效地创建字典?
    如何使用Python理解有效地创建字典?
    在python中,词典综合提供了一种生成新词典的简洁方法。尽管它们与列表综合相似,但存在一些显着差异。与问题所暗示的不同,您无法为钥匙创建字典理解。您必须明确指定键和值。 For example:d = {n: n**2 for n in range(5)}This creates a dicti...
    编程 发布于2025-05-21
  • 如何在JavaScript对象中动态设置键?
    如何在JavaScript对象中动态设置键?
    在尝试为JavaScript对象创建动态键时,如何使用此Syntax jsObj['key' i] = 'example' 1;不工作。正确的方法采用方括号: jsobj ['key''i] ='example'1; 在JavaScript中,数组是一...
    编程 发布于2025-05-21
  • Android如何向PHP服务器发送POST数据?
    Android如何向PHP服务器发送POST数据?
    在android apache httpclient(已弃用) httpclient httpclient = new defaulthttpclient(); httppost httppost = new httppost(“ http://www.yoursite.com/script.p...
    编程 发布于2025-05-21
  • input: Why Does "Warning: mysqli_query() expects parameter 1 to be mysqli, resource given" Error Occur and How to Fix It?

output: 解决“Warning: mysqli_query() 参数应为 mysqli 而非 resource”错误的解析与修复方法
    input: Why Does "Warning: mysqli_query() expects parameter 1 to be mysqli, resource given" Error Occur and How to Fix It? output: 解决“Warning: mysqli_query() 参数应为 mysqli 而非 resource”错误的解析与修复方法
    mysqli_query()期望参数1是mysqli,resource给定的,尝试使用mysql Query进行执行MySQLI_QUERY_QUERY formation,be be yessqli:sqli:sqli:sqli:sqli:sqli:sqli: mysqli,给定的资源“可能发...
    编程 发布于2025-05-21
  • 如何正确使用与PDO参数的查询一样?
    如何正确使用与PDO参数的查询一样?
    在pdo 中使用类似QUERIES在PDO中的Queries时,您可能会遇到类似疑问中描述的问题:此查询也可能不会返回结果,即使$ var1和$ var2包含有效的搜索词。错误在于不正确包含%符号。通过将变量包含在$ params数组中的%符号中,您确保将%字符正确替换到查询中。没有此修改,PDO...
    编程 发布于2025-05-21
  • 切换到MySQLi后CodeIgniter连接MySQL数据库失败原因
    切换到MySQLi后CodeIgniter连接MySQL数据库失败原因
    无法连接到mySQL数据库:故障排除错误消息要调试问题,建议将以下代码添加到文件的末尾.//config/database.php并查看输出: ... ... 回声'... echo '<pre>'; print_r($db['default']); echo '</pr...
    编程 发布于2025-05-21
  • 编译器报错“usr/bin/ld: cannot find -l”解决方法
    编译器报错“usr/bin/ld: cannot find -l”解决方法
    错误:“ usr/bin/ld:找不到-l “ 此错误表明链接器在链接您的可执行文件时无法找到指定的库。为了解决此问题,我们将深入研究如何指定库路径并将链接引导到正确位置的详细信息。添加库搜索路径的一个可能的原因是,此错误是您的makefile中缺少库搜索路径。要解决它,您可以在链接器命令中添加...
    编程 发布于2025-05-21
  • 如何避免Go语言切片时的内存泄漏?
    如何避免Go语言切片时的内存泄漏?
    ,a [j:] ...虽然通常有效,但如果使用指针,可能会导致内存泄漏。这是因为原始的备份阵列保持完整,这意味着新切片外部指针引用的任何对象仍然可能占据内存。 copy(a [i:] 对于k,n:= len(a)-j i,len(a); k
    编程 发布于2025-05-21

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3