4.Python 程序结构

简介: 4.Python 程序结构

简介

结构化程序设计是对面向过程编程的优化,它采用自上而下、逐步求精的设计方法,把系统划分为若干功能模块,各模块按要求单独编程,再通过顺序、分支、循环的控制结构进行连接。该方法强调程序的结构性,编写的代码易读、 易懂、思路清晰。

简单语句简称单句,是由一个单独的逻辑行构成的。多条简单语句可以存在于同一行内,并以分号分隔。

复杂语句简称复句,一条复合语句由一个或多个子句组成。一个子句包含一个句头和一个句体。

  • 子句头:以一个关键字开始,并以一个冒号结束。
  • 子句体:由一个子句控制的一组语句或语句块,通常采用换行缩进书写,多条语句保持多行、相同层缩进。

常见的复合语句分类如下:

if、while和for :设计程序结构,实现流程控制;

try :设计异常处理器,实现异常处理;

with 语句:设计上下文管理器,实现特殊异常处理

def和class:创建函数体和类结构;

async:定义协程,可以在多个位置上挂起和恢复执行。

分支结构

单分支: 使用if语句设计,如果条件表达式为真,则执行语句块;否则,忽略语句块。

'''
if <条件表达式>:
    <语句块>
或者
if <条件表达式>:<单句>
'''
if True:print('Hi,Python')

二分支:使用ifelse语句配合设计,如果条件表达式为真,则执行语句块1;否则,将执行语句块2.

'''
if <条件表达式>:
    <语句块1>
else:
    <语句块2>
或者
[语句块2,语句块1][条件表达式]
'''
import random
num = random.randint(1,100)
if num%2 == 0:
    print(str(num),'是偶数。')
else:
    print(str(num),'是奇数。')

多分支:嵌套条件语句,常用if-elif-else语句组合设计多分支结构。

'''
if <条件表达式1>:
    <语句块1>
elif <条件表达式2>:
    <语句块2>
...
else:
    <语句块n>
'''
import random
num = random.randint(1,100)
if num < 60:
    print(str(num),'小于60')
elif num < 80:
    print(str(num),'大于等于60,但小于80。')
else:
    print(str(num),'大于等于80')

循环结构

循环结构表示程序反复执行某个或某些操作,直到循环条件为假时才可终止循环。Python 语言的循环结构包括两种:无限循环和遍历循环。

无限循环:当循环条件表达式的值为真时,将执行语句块,执行结束后,再返回循环条件表达式继续求值判断。直到循环条件表达式的值为假时,才跳出循环。

'''
while <循环条件>:
    <语句块>
或者
while <循环条件>:<单句>
'''
 

遍历循环for 语句从可选代对象中逐一提取元素,传递给循环变量,然后执行一次语句块,在语句块中可以引用循环变量。for 语句的循环执行次数是根据可迭代对象中元素个数确定的。

'''
for <循环变量> in <可迭代对象>:
    <语句块>
'''

可选代对象可以是字符串、字节串、列表、元组、宇典、集合,文件、range对象、生成器、选代器等。

终止循环:使用break 语句可以中途终止循环的执行,一般与if语句配合使用,避免无限循环,浪费资源。break语句只能用在 for 或 whilewhile 循环语句中。

'''
while <循环条件>:
    if <条件表达式>:
        break
    <语句块>
或者
for <循环变量> in <可迭代对象>
    if <条件表达式>:
        break
    <语句块>
'''
for i in range(10):           # 循环2:外层循环
    for j in range(10):       # 循环1:内层循环
        print(i,j)            # 执行代码,可以添加更多语句
        if i == 2 and j == 2: # 跳出嵌套循环的条件
            break             # break1:内层循环终止
    else:
        continue
    break                     # brcak2:外层循环终止

在嵌套循环中,break语句仅能终止当前循环,返回外层循环,继续执行。

结束本次循环:使用continue 语句可以中途结束本次储环的执行,跳出循环体中下面尚末执行的语句,但不跳出当前循环。

'''
while <循环条件>:
    if <条件表达式>:
        continue
    <语句块>
或者
for <循环变量> in <可迭代对象>:
    if <条件表达式>:
        continue
    <语句块>
'''
a=[1,"hi", 2,"good","4","",3,4,5.3,8] #定义井初始化列表a
b = []                # 定义临时空列表b
for i in a:            # 遍历列表a
    if type(i) != int: # 如果为非整数
        continue     # 则返回继续下一次循环
    b.append(i)      # 把数宇奇存到列表6
print(b)             # 输出 [1,2,3,4,8]

相关文章
|
1月前
|
Java 数据处理 索引
(Pandas)Python做数据处理必选框架之一!(二):附带案例分析;刨析DataFrame结构和其属性;学会访问具体元素;判断元素是否存在;元素求和、求标准值、方差、去重、删除、排序...
DataFrame结构 每一列都属于Series类型,不同列之间数据类型可以不一样,但同一列的值类型必须一致。 DataFrame拥有一个总的 idx记录列,该列记录了每一行的索引 在DataFrame中,若列之间的元素个数不匹配,且使用Series填充时,在DataFrame里空值会显示为NaN;当列之间元素个数不匹配,并且不使用Series填充,会报错。在指定了index 属性显示情况下,会按照index的位置进行排序,默认是 [0,1,2,3,...] 从0索引开始正序排序行。
159 0
|
3月前
|
人工智能 Linux 开发工具
Python从零到一:手把手带你写出第一个实用程序
Python语法简洁易懂,适合编程新手入门。它广泛应用于人工智能、自动化办公、Web开发等领域。学习Python可快速搭建项目,拥有丰富库支持和强大社区资源。通过本教程,你将掌握基础语法、环境搭建、程序逻辑控制及实战项目开发,开启编程之旅。
301 0
|
2月前
|
设计模式 决策智能 Python
Python条件控制:让程序学会"思考"的魔法
本文深入浅出地讲解Python条件控制,从基础if语句到多分支、嵌套结构,再到简洁的三元表达式与Python 3.10新增的match-case模式匹配,结合电商折扣、会员等级、ATM系统等实战案例,全面掌握程序“智能决策”的核心逻辑。
285 0
|
4月前
|
数据采集 存储 NoSQL
Python爬虫案例:Scrapy+XPath解析当当网网页结构
Python爬虫案例:Scrapy+XPath解析当当网网页结构
|
6月前
|
人工智能 并行计算 开发者
CUDA重大更新:原生Python可直接编写高性能GPU程序
NVIDIA在2025年GTC大会上宣布CUDA并行计算平台正式支持原生Python编程,消除了Python开发者进入GPU加速领域的技术壁垒。这一突破通过重新设计CUDA开发模型,引入CUDA Core、cuPyNumeric、NVMath Python等核心组件,实现了Python与GPU加速的深度集成。开发者可直接用Python语法进行高性能并行计算,显著降低门槛,扩展CUDA生态,推动人工智能、科学计算等领域创新。此更新标志着CUDA向更包容的语言生态系统转型,未来还将支持Rust、Julia等语言。
437 3
CUDA重大更新:原生Python可直接编写高性能GPU程序
|
5月前
|
PyTorch 算法框架/工具 C++
人工智能算法python程序运行环境安装步骤整理
本教程详细介绍Python与AI开发环境的配置步骤,涵盖软件下载、VS2017安装、Anaconda配置、PyCharm设置及组件安装等内容,适用于Windows系统,助你快速搭建开发环境。
|
12月前
|
机器学习/深度学习 数据挖掘 Python
Python编程入门——从零开始构建你的第一个程序
【10月更文挑战第39天】本文将带你走进Python的世界,通过简单易懂的语言和实际的代码示例,让你快速掌握Python的基础语法。无论你是编程新手还是想学习新语言的老手,这篇文章都能为你提供有价值的信息。我们将从变量、数据类型、控制结构等基本概念入手,逐步过渡到函数、模块等高级特性,最后通过一个综合示例来巩固所学知识。让我们一起开启Python编程之旅吧!
177 1
|
5月前
|
机器学习/深度学习 前端开发 API
python3如何使用QT编写基础的对话框程序
Qt与Python结合形成了PyQt/PySide,为桌面应用开发提供强大支持。通过简单安装PyQt5或PySide6,开发者可快速搭建跨平台GUI应用。本文从创建基础对话框入手,介绍布局管理、信号与槽机制、对话框模式及样式表美化等核心功能,并探讨模态窗口、事件驱动编程和资源打包等内容。最后,引导读者探索模型视图架构、多线程处理等进阶技术,逐步掌握用Python+Qt开发高效桌面应用的技能。
164 0
|
7月前
|
开发框架 Java .NET
Python中main函数:代码结构的基石
在Python中,`main`函数是程序结构化和模块化的重要组成部分。它实现了脚本执行与模块导入的分离,避免全局作用域污染并提升代码复用性。其核心作用包括:标准化程序入口、保障模块复用及支持测试驱动开发(TDD)。根据项目复杂度,`main`函数有基础版、函数封装版、参数解析版和类封装版四种典型写法。 与其他语言相比,Python的`main`机制更灵活,支持同一文件作为脚本运行或模块导入。进阶技巧涵盖多文件项目管理、命令行参数处理、环境变量配置及日志集成等。此外,还需注意常见错误如全局变量污染和循环导入,并通过延迟加载、多进程支持和类型提示优化性能。
565 0