



一个简单的Python程序框架通常包括以下基本组成部分。
使用import语句导入所需的外部库或模块。例如,处理数学运算时,可以导入math模块。
使用def关键字定义函数,将程序逻辑封装为可重用的模块,提升代码的组织性和可维护性。
编写程序的核心逻辑,包括变量定义、条件判断、循环等。
使用if、elif、else进行条件判断,使用for或while循环处理重复任务。
使用try...except块捕获和处理可能发生的错误,增强程序的健壮性。
使用列表、字典、集合、元组等数据结构存储和组织数据,并结合适当的算法处理数据。
使用open函数读写文件,实现数据的持久化存储。
使用#添加单行注释,使用三引号字符串添加多行文档字符串(docstring),提高代码的可读性和可维护性。
以下是一个完整的Python程序框架示例,用于计算圆的面积,并将结果输出到文件和屏幕上。
上述代码较长,主要是因为将计算圆面积的每个功能模块都用函数实现(如验证输入半径的有效性、将结果保存到文件等),并为每个函数和主要代码行添加了详细的注释。这种写法虽然代码量较大,但结构清晰、易于维护和扩展。
如果不需要模块化和注释,代码可以简化为以下形式,直接实现圆面积的计算。
通过对比函数化代码和简化代码,学习者可以清晰地看到从简单代码到结构化、模块化代码的演进过程。以下是学习建议。
◆初学阶段:从简单代码入手,快速掌握Python的基本语法和程序运行逻辑,专注于理解核心功能。
◆进阶阶段:逐步过渡到函数代码,学习如何将代码模块化,提升代码的可读性、复用性和可维护性。
◆高级阶段:掌握编写结构清晰、易于维护的高质量代码,为开发复杂程序奠定坚实基础。
Python的语法规范是编写高质量代码的基础。以下是Python程序的主要语法规范。
Python使用缩进来控制代码的逻辑关系和层次结构,通常使用四个空格作为同一层次代码的缩进(建议使用空格而非Tab键)。
同一级别的代码块缩进必须一致,否则会导致IndentationError。
一般来说,分支结构、循环结构、函数、类等语法形式可以通过缩进体现代码的逻辑关系和层次结构。
单行注释:使用#开头,注释内容从#开始到行尾。
多行注释:使用成对的三引号'''或"""表示多行注释内容。
注释应清晰、简洁,解释代码的功能或意图,而不是描述代码本身。
变量用于存储程序运行过程中需要使用的数据,如数字、字符串、列表等。我们可以把变量理解为一个标签或名称,它指向存储在计算机内存中的某个值。通过变量,程序可以方便地访问和操作这些值。
在Python语言中,变量的定义采用“变量名=值”的形式,表示将右边的值赋给左边的变量。
变量名需要遵循一定的命名规则。
◆由字母、数字和下画线_组成。
◆不能以数字开头。
◆区分大小写(如name和Name是不同的变量)。
◆不能使用Python关键字(如if、for、while等)作为变量名。
例如,x、x01、name、_student都是合法的变量名,而1x、if、@stu都不是合法的变量名。
除此以外,变量名的命名还应遵循一个普遍接受的实践原则,也就是变量名应具有一定的描述性,能够直观反映其用途,例如user_name清晰地表示该变量用于存储用户的名字。这样的命名习惯有助于提高代码的可读性和可维护性。
关键字(Keywords)是Python语言中具有特殊意义的保留字。它们用于定义语法和结构,不能被用作变量名、函数名或其他标识符。Python的关键字是语言的核心组成部分,用于控制程序的逻辑、定义函数和类、处理异常等。
Python 3.x版本中的所有关键字(共35个)的作用分类及其具体用途如表1-3-1所示。
表1-3-1 关键字的作用分类及其具体用途
续表
变量是一个名字(标识符),用于引用存储在内存中的数据。变量本身并不存储数据,而是指向存储数据的内存地址。通过赋值运算符,可以将表达式或值与变量关联起来。
Python的赋值符号除了“=”以外,还包括:=、+=、-=、*=、/=、%=、//=和**=,如表1-3-2所示。
表1-3-2 赋值运算符
赋值表达式“:=”使赋值操作表达式运算在同一行语句中完成,可以避免一些方法的重复调用,从而提高运行速度,这是Python 3.8中新增加的一个特性。但这处应用会使表达式变得复杂和难以理解,一般不建议初学者使用。
Python支持同时为多个变量赋值,要求赋值符号左边变量的数量和右边数据的数量相同。例如,x,y=1,2,表示将1赋值给x,将2赋值给y。
PEP 8是Python官方发布的代码风格指南,旨在统一代码风格、提升可读性和协作效率,涵盖缩进、命名、注释、行长度等核心规范。
完整规范见PEP 8官方文档。