[深度学习入门]Python基础语法(中)

简介: 笔记

程序的基本结构


一、程序的流程图

  程序流程图用一系列图形、流程线和文字说明描述程序的基本操作和控制流程,它是程序分析和过程描述的最基本方式

  流程图的基本原始包括7种:

2.png


二、程序的基本结构

 顺序结构是程序的基础,但单一的顺序性结构不可能解决所有问题。程序由三种基本结构组成:顺序结构、分支结构、循环结构。这些基本结构都有一个入口和一个出口。任何程序都由这三种基本结构组合而成。

 顺序结构是程序按照线性顺序依次执行的一种运行方式,其中语句块S1和语句块S2表示一个或一组顺序执行的语句。

 分支结构是程序根据条件判断结构而选择不同向前执行路径的一种运行方式,包括单分支和二分支结构。由二分支结构会组合形成多分支结构。

 循环结构是程序根据条件判断结构向后反复执行的一种运行方式,根据循环体触发条件不同,包括条件循环和遍历循环结构。


三、程序的基本结构实例

 对于一个计算问题,可以用IPO描述、流程图或者直接以Python代码方式描述。

3.png4.png5.png


四、程序的基本结构实例

 IPO描述主要用于区分程序的输入输出关系,重点在于结构划分,算法主要采用自然语言描述。

 流程图描述侧重于描述算法的具体流程关系,流程图的结构化关系相比自然语言描述更进一步,有助于阐释算法的具体操作过程。

 Python代码描述的是最终的程序产出,最为仔细。


五、单分支结构:if语句

 Python中if语句的语法格式如下:

if<条件>:
  语句块

 语句块是if条件满足后执行的一个或多个语句序列。语句块中语句通过与if所在行形成缩进表达包含关系。If语句首先评估<条件>的结果值;如果结果为True,则执行语句块里的语句序列,然后控制转向程序的下一条语句。如果结果为False,语句块里的语句会被跳过。

 if语句中语句块执行与否依赖于条件判断。但无论什么情况,控制都会转到if语句后与该语句同级别的下一条语句。

 if中<条件>部分可以使用任何能够产生True或False的语句。形成判断条件最常见的方式是采用关系操作符。Python语言共有6个关系操作符。

6.png7.png


六、二分支结构:if-else语句

 Python中的if-else1语句用来形成二分支结构,语句格式如下:

if<条件>:
  <语句块>
else:
  <语句块>


 <语句块1>是在if条件满足后执行的一个或多个语句序列。<语句块2>是if条件不满足后执行的语句序列。二分支语句用于区分<条件>的两种可能True或者False,分别形成执行路径。

8.png

二分支结构还有一种更简洁的表达方式,适合通过判断返回特定值,语法格式如下:

<表达式1> if <表达式2>

If…else的紧凑结构非常适合对特殊值处理的情况。


七、多分支结构:if-elif-else语句

 Python的if-elif-else描述多分支结构,语句格式如下:

if<条件1>:
  <语句块>
elif<条件2>:
  <语句块2>
else:
  <语句块2>

 多分支结构是二分支结构的拓展,这种形式通常用于设置同一个判断条件的多条执行路径。

 Python依次评估寻找第一个结果为True的条件,执行该条件下的语句块,同时结束后跳过整个if-elif-else结构,执行后面的语句。如果没有任何条件成立,else下面的语句块被执行。else子句是可选的。


八、遍历循环:for循环

 遍历循环:根据循环执行次数的确定性,循环可以分为确定次数循环和非确定次数循环。确定次数循环指循环体对循环次数有明确的定义循环次数采用遍历结构中元素个数来体现。Python通过保留字for实现“遍历循环”:

for<循环变量> in <遍历结构>:
  <语句块>

 循环结构可以是字符串、文件、组合数据类型或range()函数:

9.png

遍历循环还有一种扩展模式,使用方法如下:

for <循环变量> in <遍历结构>: 
  <语句块1>
else:
  <语句块2>

 当for循环正常执行之后,程序会继续执行else语句中内容。else语句只在循环正常执行之后才执行并结束。因此,可以在<语句块2>中放置判断循环执行情况的语句。


九、无限循环:while语句

 无限循环一直保持循环操作直到特定的循环条件不被满足才结束,不需要提前知道确定循环次数。Python通过保留字while实现无限循环,使用方法如下:

while <条件>:
  <语句块>语句块

 无限循环也有一种使用保留字else的拓展模式:

while<条件>:
  <语句块1>
else:
  <语句块2>


十、循环保留字:break和continue

 循环结构有两个辅助保留字:break和continue,它们用于辅助控制循环执行。

 break用来跳出最内层for或while循环,脱离该循环后程序从循环后代码继续执行。其中,break语句跳出了最内层for循环,但仍然继续执行外层循环。每个break语句只有能力跳出当前层次循环。

 continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳出当前循环。对于while循环,继续求解循环条件。而对于for循环,程序流程接着遍历循环列表。

 continue语句和break语句的区别是:

 continue语句只结束本次循环,而不终止整个循环的执行。break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。

 for循环和while循环中都存在一个else扩展用法。

 else中的语句块只在一种条件下执行,即for循环正常遍历了所有内容没有因为break或return而退出。continue保留字对else没有影响。


十一、random库的使用

10.png

对random库的引用方法与math库一样,采用下面两种方式实现:

import random
from random import *

生成随机数之前可以通过seed()函数指定随机种子,随机种子一般是一个整数。只要种子相同,每次生成的随机数序列也相同。这种情况便于测试和同步数据。

image.png

十二、π的计算

image.png


十三、异常处理机制

  异常处理:try-except语句

  Python解释器返回了异常信息,同时程序退出

image.png

Python异常信息中最重要的部分是异常类型,它表明了发生异常的原因,也是程序处理异常的依据。Python使用try-except语句实现异常处理,基本的语法格式如下:

try:
  <语句块1>
except<异常类型>:
  <语句块2>

十四、异常的高级用法

 最后一个except语句没有指定任何类型,表示它对应的语句块可以处理所有其他异常。这个过程与if-elif-else语句类似,是分支结构的一种表达方式。

image.png

该程序将用户输入的数字作为索引从字符串alp中返回一个字符,当用户输入非整数字符时,except NameError异常被捕获到,提示用户输入类型错误。当用户输入数字不再01到256之间时,异常被except捕获,程序打印其他错误信息,执行过程和结果如下:

image.png

除了try和except保留字外,异常语句还可以与else和finally保留字配合使用,语法格式如下:

try:
  <语句块1>
except<异常类型1>:
  <语句块2>
else:
  <语句块3>
finally:
  语句块4>

image.png

相关文章
|
2月前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
2月前
|
机器学习/深度学习 数据可视化 TensorFlow
使用Python实现深度学习模型的分布式训练
使用Python实现深度学习模型的分布式训练
194 73
|
30天前
|
存储 开发者 Python
python基本语法
Python的基本语法简洁而强大,支持多种编程范式,包括面向对象编程和函数式编程。通过掌握变量和数据类型、操作符、控制结构、函数、类和模块等基本概念,可以有效地编写高效、可读的Python代码。无论是初学者还是经验丰富的开发者,Python都提供了丰富的工具和库来满足各种编程需求。
69 13
|
1月前
|
存储 数据挖掘 数据处理
Python Pandas入门:行与列快速上手与优化技巧
Pandas是Python中强大的数据分析库,广泛应用于数据科学和数据分析领域。本文为初学者介绍Pandas的基本操作,包括安装、创建DataFrame、行与列的操作及优化技巧。通过实例讲解如何选择、添加、删除行与列,并提供链式操作、向量化处理、索引优化等高效使用Pandas的建议,帮助用户在实际工作中更便捷地处理数据。
45 2
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费市场分析的深度学习模型
使用Python实现智能食品消费市场分析的深度学习模型
152 36
|
1月前
|
人工智能 编译器 Python
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
41 0
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
|
2月前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品消费需求分析的深度学习模型
使用Python实现智能食品消费需求分析的深度学习模型
97 21
|
2月前
|
机器学习/深度学习 数据采集 搜索推荐
使用Python实现智能食品消费偏好预测的深度学习模型
使用Python实现智能食品消费偏好预测的深度学习模型
113 23
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费习惯预测的深度学习模型
使用Python实现智能食品消费习惯预测的深度学习模型
159 19
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费趋势分析的深度学习模型
使用Python实现智能食品消费趋势分析的深度学习模型
154 18

热门文章

最新文章