欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 创投人物 > 【Python】基础语法体系:两种常用语句

【Python】基础语法体系:两种常用语句

2024/11/30 9:58:03 来源:https://blog.csdn.net/weixin_73602725/article/details/140286889  浏览:    关键词:【Python】基础语法体系:两种常用语句

在这里插入图片描述


个人主页:【😊个人主页】
系列专栏:【❤️Python】


文章目录

  • 前言
  • 条件语句
  • 动态实例
    • if语句
    • if-else 语句
    • if-elif-else 语句
    • 嵌套条件语句
  • 循环语句
    • for循环
    • while循环
  • 动态实例
  • 嵌套循环


前言

Python语句是构成Python程序的基本单元,用于执行各种操作,如变量赋值、条件判断、循环迭代、函数调用等,因此在学习Python过程中,熟练的掌握各种语句的运用是不可避免的环节。今天我们就在详细的介绍两种Python最常用的语句:条件语句,循环语句,想了解更多Python内容请订阅内容【Python系列教程】

在这里插入图片描述

条件语句

Python中的条件语句允许程序根据条件(或称为“表达式”)的真假来决定执行哪段代码。Python中主要有两种条件语句:if 语句if-else 语句,以及更复杂的 if-elif-else 结构。在这里插入图片描述
注:

  • 条件表达式的结果必须是布尔值(True 或 False)。Python中许多表达式都可以隐式地转换为布尔值,例如,非零数值被视为True,零和空对象(如空字符串""、空列表[]、空字典{}等)被视为False。
  • 缩进在Python中非常重要,它决定了代码块的开始和结束。条件语句下的代码块必须正确缩进。
  • elif 和 else 语句是可选的,但 if 语句后面必须跟一个冒号(:)和缩进的代码块。

动态实例

在这里插入图片描述

if语句

if 语句后面跟一个条件表达式,如果条件为真(True),则执行缩进的代码块。

x = 10  
if x > 5:  print("x is greater than 5")

在这里插入图片描述

if-else 语句

if-else 语句用于在条件为真时执行一个代码块,如果条件为假(False),则执行另一个代码块。

x = 3  
if x > 5:  print("x is greater than 5")  
else:  print("x is not greater than 5")

在这里插入图片描述
注:当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。

if-elif-else 语句

if-elif-else 语句是 if 和 else 的扩展,允许在多个条件中进行选择。elif 是 “else if” 的缩写,用于检查多个表达式是否为真,并在为真时执行相应的代码块。

x = 10  
if x > 20:  print("x is greater than 20")  
elif x > 10:  print("x is greater than 10 but less than or equal to 20")  
else:  print("x is 10 or less")

在这里插入图片描述
注:python并不支持 switch 语句,多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。

嵌套条件语句

条件语句还可以嵌套使用,即在一个条件语句的代码块内部再包含一个或多个条件语句。

x = 15  
y = 20  
if x > 10:  if y > 15:  print("Both x and y are greater than 15")  else:  print("x is greater than 10, but y is not greater than 15")  
else:  print("x is 10 or less")

在这里插入图片描述

循环语句

循环语句允许我们执行一个语句或语句组多次,它通常允许你重复执行一段代码块,直到满足特定的条件。Python中有两种基本的循环语句:for 循环while 循环
在这里插入图片描述
注:在使用 while 循环时,必须确保循环条件在某个时刻会变为假,以避免创建无限循环。
for 循环通常比 while 循环更简洁,特别是当你知道需要遍历的序列时。
可以通过 break 语句来提前退出循环,通过 continue 语句来跳过当前循环的剩余部分并继续下一次迭代。
循环还可以嵌套使用,即在一个循环内部再定义一个或多个循环。

for循环

for 循环用于遍历任何序列(如列表、元组或字符串)或其他可迭代对象。它通常用于在你知道需要遍历的序列长度时使用。
在这里插入图片描述

# 遍历列表  
fruits = ["apple", "banana", "cherry"]  
for fruit in fruits:  print(fruit)  # 遍历字符串  
for char in "hello":  print(char)  # 使用range()函数遍历数字序列  
for i in range(5):  # 默认从0开始,到4结束  print(i)  # 使用range()函数指定起始和结束值  
for i in range(1, 6):  # 从1开始,到5结束  print(i)  # 使用range()函数指定起始、结束和步长  
for i in range(0, 10, 2):  # 从0开始,到9结束,步长为2  print(i)

在使用Python的for循环时,有几个注意事项可以帮助你更有效地编写代码并避免常见的错误。

迭代对象:确保你用于迭代的对象是可迭代的。在Python中,列表、元组、字符串、字典(迭代其键)、集合以及任何定义了__iter__()或__getitem__()方法的对象都是可迭代的。如果尝试对非可迭代对象使用for循环,将会引发TypeError。
迭代变量:在for循环的头部,迭代变量(或称为循环变量)在每次迭代时会被赋予序列中的下一个元素。这个变量只在该循环的块内部可见。如果你需要在循环外部访问该值,应该考虑使用另一个变量来存储它。
修改迭代对象:在迭代过程中修改迭代对象(如列表)时要特别小心。如果修改导致迭代器的长度发生变化(如添加或删除元素),可能会导致跳过某些元素或引发RuntimeError(如果迭代器在迭代过程中被修改了)。如果需要修改列表,考虑先迭代其副本或使用其他逻辑。
嵌套循环:当使用嵌套循环时,确保你理解外层循环和内层循环之间的关系,以及它们如何一起工作。嵌套循环的每一层都会创建一个新的作用域,其中可以定义自己的变量。
无限循环:如果for循环的条件永远不会变为假(尽管在标准的for循环中这不太常见,因为它通常依赖于可迭代对象的长度),或者循环体内部没有适当的终止条件,那么可能会创建无限循环。确保你的循环有明确的退出条件。

while循环

while 循环在给定条件为真时重复执行一段代码块。这在你不知道需要循环多少次时非常有用。
其基本形式为:

while 判断条件(condition):执行语句(statements)……

动态实例

在这里插入图片描述
在这里插入图片描述

# 简单的while循环  
count = 0  
while count < 5:  print(count)  count += 1  # 使用while循环遍历列表(不推荐,因为不直观且难以控制)  
fruits = ["apple", "banana", "cherry"]  
i = 0  
while i < len(fruits):  print(fruits[i])  i += 1

在这里插入图片描述

循环条件:确保你的循环条件在某种情况下会变为假(False),以避免创建无限循环。无限循环会消耗大量系统资源,并使程序挂起。
循环变量更新:在while循环内部,确保有一个或多个语句用于更新循环变量(或影响循环条件的其他变量)。
循环控制语句:使用break语句来提前退出循环。这在你满足某个条件时不再需要继续迭代时非常有用。使用continue语句来跳过当前迭代的剩余部分,并继续下一次迭代。
嵌套循环:如果你的while循环嵌套在另一个循环(无论是while循环还是for循环)中,确保你理解这两个循环之间的相互作用。
性能考虑:对于大型数据集或复杂计算,while循环可能会变得效率低下。在这种情况下,考虑使用更高效的算法或数据结构,或者将计算分解为更小的、可管理的部分。如果可能的话,使用向量化操作(例如NumPy库中的操作)来替代循环,这通常可以显著提高性能。

嵌套循环

# 打印一个5x5的星号矩阵  
for i in range(5):  for j in range(5):  print("*", end=" ")  print()  # 换行

在这里插入图片描述

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com