[深度学习入门]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

相关文章
|
25天前
|
缓存 算法 数据处理
Python入门:9.递归函数和高阶函数
在 Python 编程中,函数是核心组成部分之一。递归函数和高阶函数是 Python 中两个非常重要的特性。递归函数帮助我们以更直观的方式处理重复性问题,而高阶函数通过函数作为参数或返回值,为代码增添了极大的灵活性和优雅性。无论是实现复杂的算法还是处理数据流,这些工具都在开发者的工具箱中扮演着重要角色。本文将从概念入手,逐步带你掌握递归函数、匿名函数(lambda)以及高阶函数的核心要领和应用技巧。
Python入门:9.递归函数和高阶函数
|
25天前
|
开发者 Python
Python入门:8.Python中的函数
### 引言 在编写程序时,函数是一种强大的工具。它们可以将代码逻辑模块化,减少重复代码的编写,并提高程序的可读性和可维护性。无论是初学者还是资深开发者,深入理解函数的使用和设计都是编写高质量代码的基础。本文将从基础概念开始,逐步讲解 Python 中的函数及其高级特性。
Python入门:8.Python中的函数
|
25天前
|
存储 索引 Python
Python入门:6.深入解析Python中的序列
在 Python 中,**序列**是一种有序的数据结构,广泛应用于数据存储、操作和处理。序列的一个显著特点是支持通过**索引**访问数据。常见的序列类型包括字符串(`str`)、列表(`list`)和元组(`tuple`)。这些序列各有特点,既可以存储简单的字符,也可以存储复杂的对象。 为了帮助初学者掌握 Python 中的序列操作,本文将围绕**字符串**、**列表**和**元组**这三种序列类型,详细介绍其定义、常用方法和具体示例。
Python入门:6.深入解析Python中的序列
|
25天前
|
存储 SQL 索引
Python入门:7.Pythond的内置容器
Python 提供了强大的内置容器(container)类型,用于存储和操作数据。容器是 Python 数据结构的核心部分,理解它们对于写出高效、可读的代码至关重要。在这篇博客中,我们将详细介绍 Python 的五种主要内置容器:字符串(str)、列表(list)、元组(tuple)、字典(dict)和集合(set)。
Python入门:7.Pythond的内置容器
|
12天前
|
数据采集 人工智能 数据挖掘
Python 编程基础与实战:从入门到精通
本文介绍Python编程语言,涵盖基础语法、进阶特性及实战项目。从变量、数据类型、运算符、控制结构到函数、列表、字典等基础知识,再到列表推导式、生成器、装饰器和面向对象编程等高级特性,逐步深入。同时,通过简单计算器和Web爬虫两个实战项目,帮助读者掌握Python的应用技巧。最后,提供进一步学习资源,助你在Python编程领域不断进步。
|
11天前
|
Python
课时19:Python的基本语法
今天给大家带来分享的是 Python 的基本语法,分为以下六个部分。 1.在 Python 中严格区分大小写 2.Python 中的每一行就是一条语句,每条语句以换行结束 3.Python 中每一行语句不要过长 4.条语句可以分多行编写,语句后边以\结尾 5.Python 是缩进严格的语言,不要随便写缩进 6.在 Python 中使用#来表示注释
|
10月前
|
人工智能 Java Python
python入门(二)安装第三方包
python入门(二)安装第三方包
119 1
|
5月前
|
机器学习/深度学习 Python
【10月更文挑战第5天】「Mac上学Python 6」入门篇6 - 安装与使用Anaconda
本篇将详细介绍如何在Mac系统上安装和配置Anaconda,如何创建虚拟环境,并学习如何使用 `pip` 和 `conda` 管理Python包,直到成功运行第一个Python程序。通过本篇,您将学会如何高效地使用Anaconda创建和管理虚拟环境,并使用Python开发。
182 4
【10月更文挑战第5天】「Mac上学Python 6」入门篇6 - 安装与使用Anaconda
|
5月前
|
IDE 开发工具 iOS开发
【10月更文挑战第3天】「Mac上学Python 3」入门篇3 - 安装Python与开发环境配置
本篇将详细介绍如何在Mac系统上安装Python,并配置Python开发环境。内容涵盖Python的安装、pip包管理工具的配置与国内镜像源替换、安装与配置PyCharm开发工具,以及通过PyCharm编写并运行第一个Python程序。通过本篇的学习,用户将完成Python开发环境的搭建,为后续的Python编程工作打下基础。
460 2
【10月更文挑战第3天】「Mac上学Python 3」入门篇3 - 安装Python与开发环境配置
|
5月前
|
iOS开发 MacOS Python
【10月更文挑战第1天】「Mac上学Python 1」入门篇1 - 安装Typora与Markdown编辑技巧
本篇将详细介绍如何在Mac系统上安装Typora这款简洁高效的Markdown编辑器,并学习Markdown常用语法。通过本篇,用户能够准备好记录学习笔记的工具,并掌握基本的文档编辑与排版技巧,为后续学习提供便利。
242 1
【10月更文挑战第1天】「Mac上学Python 1」入门篇1 - 安装Typora与Markdown编辑技巧

热门文章

最新文章