浅谈Python核心技术
2020-04-14杨玉莹
【摘要】通过企业实践,学习到了当今流行的编程语言Python。Python是一种面向对象的动态类解释型脚本语言,其设计宗旨是简明,优雅,强大。被大量程序员所欢迎,在人工智能,云计算,教育,大数据开发,web开发,桌面界面开发,软件开发等方向得到广泛应用。由于Python语言的简洁性、易读性和易维护性,一些院校已将Python语言引入程序设计课堂,使学生接收现今程序设计语言的发展趋势和基础技术,了解本专业的行情。学习Python核心技术不仅可以增加知识储备,还为之后教授该课程打下语言基础。本文主要阐述了Python语言的核心技术,包括:缩进、类型、控制语句、表达式和函数。
【关键词】Python 程序设计 核心技术
一、Python核心技术
(一)缩进
大部分编程语言用花括号或某种关键字来表示语句块的开始和退出。而Python加入了缩进规则来表示语句块的开始和退出,如不符合缩进规则,程序将不通过编译。这样不仅使缩进成为了语法的一部分,还可以强制程序员养成良好的编程习惯。例如if语句:
(二)类型
Python内置了丰富的数据类型,与Java、C++相比,有效地减少了代码的长度。Python内置数据类型(适用于Python 3.x)如下表所示:
(三)控制语句
第一,if语句,当条件成立时运行语句块。经常与else, elif(相当于else if) 配合使用。第二,for语句,遍历列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。第三,while语句,当条件为真时,循环运行语句块。第四,try语句,与except,finally配合使用,处理程序中出現的异常。第五,class语句,用于定义类型。第六,def语句,用于定义函数和类型的方法。第七,pass语句,表示此行为空,不运行任何操作。第八,assert语句,用于程序调试阶段时测试运行条件是否满足。第九,with语句,Python2.6以后定义的语法,在一个场景中运行语句块。比如,运行语句块前加密,然后在语句块运行退出后解密。第十,yield语句,在迭代器函数内使用,用于返回一个元素。自从Python 2.5版本以后。这个语句变成一个运算符。第十一,raise语句,制造一个错误。第十二,import语句,导入一个模块或包。第十三,from import语句,从包导入模块或从模块导入某个对象。第十四,import as语句,将导入的对象赋值给一个变量。第十五,in语句,判断一个对象是否在一个字符串/列表/元组里。
(四)表达式
第一,算术运算符中+、-、*、/、//、**、~、%分别表示加法或取正、减法或取负、乘法、除法、整除、乘方、取补、取余。右移、左移运算符为>>、<<。逻辑运算符中&、|、^表示二进制的AND、OR、XOR运算。关系运算符中>、<、==、!=、<=、>=分别表示大于、小于、等于、不等于、小于等于、大于等于,用于比较两个表达式的大小。在这些运算符里面~、|、^、&、<<、>>必须应用于整数。这些运算符与C/C++语言是相似的。第二,and,or,not表示逻辑运算。第三,is, is not用于比较两个变量是否是同一个对象。in, not in用于判断一个对象是否属于另外一个对象。第四,y if cond else x表示条件表达式。意思是当cond为真时,表达式的值为y,否则表达式的值为x。相当于C++和Java里的cond?y:x。第五,Python区分列表(list)和元组(tuple)两种类型。list的写法是[1,2,3],而tuple的写法是(1,2,3)。可以改变list中的元素,而不能改变tuple。在某些情况下,tuple的括号可以省略。tuple对于赋值语句有特殊的处理。因此,可以同时赋值给多个变量。第六,Python使用单引号和双引号来表示字符串。两种符号作用相同。一般地,如果字符串中出现了双引号,就使用单引号来表示字符串;反之则使用双引号。如果都没有出现,就依个人喜好选择。出现在字符串中的\(反斜杠)被解释为特殊字符,比如\n表示换行符。表达式前加r指示Python不解释字符串中出现的\。这种写法通常用于编写正则表达式或Windows文件路径。第七,Python支持列表切割,可以取得完整列表的一部分。支持切割操作的类型有str, bytes, list, tuple等。它的语法是...[left:right]或者...[left:right:stride]。
(五)函数
Python的函数支持递归、默认参数值、可变参数,但不支持函数重载。为了增强代码的可读性,可以在函数后书写“文档字符串”,用于解释函数的作用、参数的类型与意义、返回值类型与取值范围等。可以使用内置函数help()打印出函数的使用帮助。
参考文献:
[1]狄博, 王晓丹. 基于Python语言的面向对象程序设计课程教学[J]. 计算机工程与科学, 2014, 36(S1):122-125.
[2]Summerfield M . Python编程实战[M]. 机械工业出版社, 2014.
[3]韦玮.Python基础实例教程[M].人民邮电出版社,2018.
[4]张光河.数据结构——Python语言描述[M].人民邮电出版社,2018.
作者简介:杨玉莹(1991-),女,汉族,河北石家庄人,工学硕士,石家庄财经职业学院,教师,研究方向:软件技术。