Python基础入门_3条件语句和迭代循环

Python 基础入门前两篇:

  • Python 基础入门–简介和环境配置
  • Python基础入门_2基础语法和变量类型

这是第三篇内容,主要简单介绍条件语句和迭代循环语句,内容也比较简单,目录如下:


条件语句和迭代循环

1. 条件语句

Python 的条件语句就是通过一条或者多条语句的执行结果(判断 True 或者 False)来决定执行的代码块。

整体上可以分为四种语句:

  • if 语句
  • if-else 语句
  • if-elif-else 语句
  • 嵌套语句(多个 if 语句)
if 语句

给定一个二元条件,满足条件执行语句 A,不满足就跳过,代码例子如下:

a = 3
# if 语句
if a > 0:print('a =', a)
if-else 语句

同样是给定二元条件,满足条件执行语句 A,不满足执行语句 B,代码例子如下:

a = 3
# if-else
if a > 2:print('a is ', a)
else:print('a is less 2')
if-elif-else 语句

给定多元条件,满足条件1,执行语句1,满足条件2,执行语句2,依次类推,简单的代码例子如下:

a = 3
# if-elif-else
if a > 5:print('a>5')
elif a > 3:print('a>3')
else:print('a<=3')
嵌套语句

嵌套语句中可以包含更多的 if 语句,或者是 if-else 、if-elif-else 的语句,简单的代码例子如下所示:

a = 3
# 嵌套语句
if a < 0:print('a<0')
else:if a > 3:print('a>3')else:print('0<a<=3')

2. 迭代循环

Python 中的循环语句主要是两种,while 循环和 for 循环,然后并没有 do-while 循环。

while 循环

一个简单的 while 循环如下,while 循环的终止条件就是 while 后面的语句不满足,即为 False 的时候,下面的代码例子中就是当 n=0 的时候,会退出循环。

n = 3
while n > 0:print(n)n -= 1

另一个例子,用于输入的时候让用户不断输入内容,直到满足某个条件后,退出。

promt = "\ninput something, and repeat it."
promt += "\nEnter 'q' to end the program.\n"
message = ""
while message != 'q':message = input(promt)print(message)
for 循环

for 循环可以显式定义循环的次数,并且通常经常用于列表、字典等的遍历。一个简单的例子如下:

# for
l1 = [i for i in range(3)]
for v in l1:print(v)

上述例子其实用了两次 for 循环,第一次是用于列表推导式生成列表 l1 ,并且就是采用 range 函数,指定循环次数是 3 次,第二次就是用于遍历列表。

对于 range 函数,还有以下几种用法:

l2 = ['a', 'b', 'c', 'dd', 'nm']
# 指定区间
for i in range(2, 5):print(i)
# 指定区间,并加入步长为 10
for j in range(10, 30, 10):print(j)
# 结合 len 来遍历列表
for i in range(len(l2)):print('{}: {}'.format(i, l2[i]))

另外,对于列表的循环,有时候希望同时打印当前元素的数值和索引值,可以采用 enumerate 函数,一个坚定例子如下:

l2 = ['a', 'b', 'c', 'dd', 'nm']
for i, v in enumerate(l2):print('{}: {}'.format(i, v))
break 和 continue 以及循环语句中的 else 语句

break 语句用于终止循环语句,例子如下:

# break
for a in range(5):if a == 3:breakprint(a)

这里就是如果 a = 3 ,就会终止 for 循环语句。

continue 用于跳过当前一次的循环,进入下一次的循环,例子如下:

# continue
for a in range(5):if a == 3:continueprint(a)

循环语句可以有 else 子句,它在穷尽列表(以 for 循环)或条件变为 false (以 while 循环)导致循环终止时被执行,但循环被 break 终止时不执行。例子如下:

# else
for a in range(5):print(a)
else:print('finish!')

参考

  • 《Python 编程从入门到实践》
  • Python 基础教程
  • 一天快速入门python
  • 超易懂的Python入门级教程,赶紧收藏!

小结

本文主要是简单整理了 Python 的条件语句和循环语句的用法。

此外,本文的代码都上传到我的 github 上了:

https://github.com/ccc013/Python_Notes/tree/master/Practise

欢迎关注我的微信公众号–机器学习与计算机视觉,或者扫描下方的二维码,大家一起交流,学习和进步!

往期精彩推荐

机器学习系列
  • 初学者的机器学习入门实战教程!
  • 模型评估、过拟合欠拟合以及超参数调优方法
  • 常用机器学习算法汇总比较(完)
  • 常用机器学习算法汇总比较(上)
  • 机器学习入门系列(2)–如何构建一个完整的机器学习项目(一)
  • 特征工程之数据预处理(上)
Github项目 & 资源教程推荐
  • [Github 项目推荐] 一个更好阅读和查找论文的网站
  • [资源分享] TensorFlow 官方中文版教程来了
  • 必读的AI和深度学习博客
  • [教程]一份简单易懂的 TensorFlow 教程
  • [资源]推荐一些Python书籍和教程,入门和进阶的都有!
  • [Github项目推荐] 机器学习& Python 知识点速查表
  • [Github项目推荐] 推荐三个助你更好利用Github的工具

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

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

相关文章

排序算法比较总结

冒泡排序 每次从头开始&#xff08;每次结束可以不到最后&#xff0c;因为上一次已经确定最大值在末尾了&#xff09;&#xff0c;比较相邻两个数&#xff0c;每次下沉一个最大值。 123456789101112131415161718192021222324252627282930313233343536 #include <iostream>…

如果你还不了解GBDT,不妨看看这篇文章

作者&#xff1a;Freemanzxp简介&#xff1a;中科大研二在读&#xff0c;目前在微软亚洲研究院实习&#xff0c;主要研究方向是机器学习。原文&#xff1a;https://blog.csdn.net/zpalyq110/article/details/79527653Github&#xff1a;https://github.com/Freemanzxp/GBDT_Sim…

来了解下计算机视觉的八大应用

2019 第 40 篇&#xff0c;总第 64 篇文章本文大约7000字&#xff0c;建议收藏阅读之前通过三篇文章简单介绍了机器学习常用的几种经典算法&#xff0c;当然也包括了目前很火的 CNNs 算法了&#xff1a;常用机器学习算法汇总比较(上&#xff09;常用机器学习算法汇总比较(中&am…

itchat 保存好友信息以及生成好友头像图片墙

2019 第 41 篇&#xff0c;总第 65 篇文章本文大约 4000 字&#xff0c;阅读大约需要 12 分钟最近简单运用 itchat 这个库来实现一些简单的应用&#xff0c;主要包括以下几个应用&#xff1a;统计保存好友的数量和信息统计和保存关注的公众号数量和信息简单生成好友头像的图片墙…

启动outlook时报错:mapi无法加载信息服务msncon.dll

今天这个Office2010 outlook搞的让人蛋疼&#xff0c;老是说启动outlook时报错&#xff1a;mapi无法加载信息服务msncon.dll。 百度了一下&#xff0c;如下解决方案&#xff1a; 安装路径为D:\NEW Windows7 File\office2010\Office14 在命令行中定位到outlook安装文件夹&#x…

快速入门Pytorch(1)--安装、张量以及梯度

2019 第 42 篇&#xff0c;总第 66 篇文章本文大约 9000 字&#xff0c;建议收藏阅读&#xff01;这是翻译自官方的入门教程&#xff0c;教程地址如下&#xff1a;https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html虽然教程名字是 60 分钟入门&#xff0…

快速入门PyTorch(2)--如何构建一个神经网络

2019 第 43 篇&#xff0c;总第 67 篇文章本文大约 4600 字&#xff0c;阅读大约需要 10 分钟快速入门 PyTorch 教程第二篇&#xff0c;这篇介绍如何构建一个神经网络。上一篇文章&#xff1a;快速入门Pytorch(1)--安装、张量以及梯度本文的目录&#xff1a;3. 神经网络在 PyTo…

快速入门PyTorch(3)--训练一个图片分类器和多 GPUs 训练

2019 第 44 篇&#xff0c;总第 68 篇文章本文大约14000字&#xff0c;建议收藏阅读快速入门 PyTorch 教程前两篇文章&#xff1a;快速入门Pytorch(1)--安装、张量以及梯度快速入门PyTorch(2)--如何构建一个神经网络这是快速入门 PyTorch 的第三篇教程也是最后一篇教程&#xf…

60分钟快速入门 PyTorch

PyTorch 是由 Facebook 开发&#xff0c;基于 Torch 开发&#xff0c;从并不常用的 Lua 语言转为 Python 语言开发的深度学习框架&#xff0c;Torch 是 TensorFlow 开源前非常出名的一个深度学习框架&#xff0c;而 PyTorch 在开源后由于其使用简单&#xff0c;动态计算图的特性…

5月份 Github 上最热的十个 Python 项目,从Debug工具到AI水军、量化交易系统。

2019 年第 46 篇&#xff0c;总第 70 篇文章原文地址&#xff1a;https://medium.mybridge.co/python-open-source-for-the-past-month-v-may-2019-473e9f60c73f5 月份刚刚过去&#xff0c;之前看到了一篇介绍 5 月份的最热机器学习项目&#xff0c;刚好看到 Mybridge AI 博客又…

[Github项目]基于PyTorch的深度学习网络模型实现

2019 年第 48 篇文章&#xff0c;总第 72 篇文章本文大约 1500 字&#xff0c;阅读大约需要 4 分钟今天主要分享两份 Github 项目&#xff0c;都是采用 PyTorch 来实现深度学习网络模型&#xff0c;主要是一些常用的模型&#xff0c;包括如 ResNet、DenseNet、ResNext、SENet等…