您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > Python-3基础教程-第2章
Python3基础教程出版社或系部名称主讲:授课教师姓名第2章Python编程基础Python语法简单,容易学习和掌握。本章将从Python程序的基本结构开始,讲解Python语言的编程基础知识,包括Python程序基本结构、基本输入输出、运算符、变量与表达式以及内置基本数据类型(数字、集合、字符串、列表、元组和字典)等内容。本章主要内容变量与动态数据类型Python程序基本结构基本输入输出123基本数据类型42.1Python程序基本结构Python程序结构涉及代码块、注释、语句分隔、语句续航和关键字与大小写等内容。本节主要讲述:–用缩进表示代码块–代码注释–语句续行–语句分隔–关键字与大小写2.1.1用缩进表示代码块在Java、C/C++等语言中,用花括号表示代码块,例如:2.1.1用缩进表示代码块Python使用缩进(空格)来表示代码块。通常,语句末尾的冒号表示代码块的开始。在if、for、while、函数、类等定义中都会使用到代码块。例如:2.1.1用缩进表示代码块在包含代码嵌套时,应注意同级的代码块,其缩进量应保持相同(不同可能会导致出错或得到意外的结果)。例如:2.1.2代码注释注释用于为程序添加说明性的文字。Python在运行程序时,会忽略被注释的内容。Python注释有单行注释和多行注释。单行注释用“#”表示注释开始,“#”之后的内容不会被执行。单行注释可以单独占一行,也可放在语句末尾。多行注释是用三个英文的单引号“'''”或双引号“”作为注释的开始和结束符号。2.1.3代码续行通常,Python中的一条语句占一行,没有类似于Java中的分号等语句结束符号。在遇到较长的语句时,可使用语句需要符号,将一条语句写在多行之中。Python有两种续行方式。一种是使用“\”符号。应注意在“\”符号之后不能有任何其他符号,包括空格和注释。例如:2.1.3代码续行另一种特殊情况下的续行方式是在使用括号(包括圆括号()、方括号[]和大括号{}等)时,括号中的内容可分多行书写,括号中的空白和换行符都会被忽略。例如:2.1.4语句分隔2.1.5关键字与大小写Python语言的基本组成中使用的各种标识符,如if、for、while等,可称为关键字。Python对大小写敏感,关键字和各种自定义标识符(如变量名、函数名等)在使用时区分大写和小写。例如:if不能写成If或IF,abc和Abc是两个不同的变量。下面的代码在交互模式下输入“If25:”,按【Enter】键换行时,Python提示语法出错:2.1.5关键字与大小写下面的代码说明了abc和Abc是两个不同的变量:2.2基本输入和输出在Python程序中,通常用input和print函数来执行基本的输入和输出。本节主要讲述:–基本输入–基本输出2.2.1基本输入input函数用于获得用户输入数据,其基本格式为:其中,变量和提示字符串均可省略。input函数将用户输入以字符串返回。用户按【Enter】键完成输入,【Enter】键之前的全部字符均作为输入内容。例如:2.2.1基本输入input函数用于获得用户输入数据,其基本格式为:其中,变量和提示字符串均可省略。input函数将用户输入以字符串返回。用户按【Enter】键完成输入,【Enter】键之前的全部字符均作为输入内容。例如:2.2.1基本输入如果需要输入整数或小数,则需要使用int或float函数进行转。例如:2.2.1基本输入在使用input输入数据时,如果没有输入任何数据,按【Ctrl+Z】组合键中断输入退出,则会产生EOFError异常。例如:2.2.2基本输出2.2.2基本输出2.2.2基本输出2.3基本数据类型:数字数据类型决定了程序如何存储和处理数据。Python完善的数据类型系统,使得在Python程序中可以轻松完成各种数据处理。数字是程序处理的一种基本数据。Python核心对象集合包含的数字类型包括:整数(int,无小数点的数)、浮点数(float,带小数点的数)、复数、固定进度的十进制数、分数等。本节主要讲述:–数字常量–数字运算–小数–分数–数学函数2.3.1数字常量1.整数常量整数常量就是不带小数点的数。例如,123、-12、0、9999999999999999等。在Python3.X中,不再区别整数和长整数。整数理论上可以是无穷大,只要计算机内存空间足够。例如,下面在交互模式下分别输出2和9的100次方:一般的整数常量都是十进制的。Python还允许将整数常量表示为二进制、八进制和十六进制:–二进制:以0b或0B开头,后面跟二进制数字(0或1)。例如,0b101、0B11。–八进制:以0o或0O开头,后面跟八进制数字(0~7。例如,0o15、0O123。–十六进制:以0x或0X开头,后面跟十六进制数字(0~9、A~F),字母大写或小写都可以。例如,0x12AB、0X123。提示:不同进制只是整数的不同书写形式,程序运行时都会处理为十进制数。整数常量在程序中使用时,都会生成一个整数对象。int函数的第一个参数只能是整数字符串,即第一个字符可以是正负号,其他字符必须是数字,不能包含小数点或其他符号,否则会出错。例如:Python提供了内置函数bin(x)、oct(x)和hex(x)用于将整数转换为对应进制的字符串。例如:2.3.1数字常量2.浮点常量12.5、2.、3.0、1.23e+10、1.23E-10等都是合法的浮点数常量。可以用type函数查看数据类型。例如:2.3.1数字常量3.复数常量复数常量表示为“实部+虚部”形式,虚部以j或J结尾。例如:2+3j、2-3J、2j。可用complex函数来创建复数。complex函数基本格式为:2.3.1数字常量4.布尔(bool)类型常量布尔类型以成为Python的一种正式的数据类型。布尔类型有两个值True和False,分别用于表示逻辑真和逻辑假。True和False是两个预定义的内部变量。从面向对象的角度看,bool类型是int类型的子类,True和False是bool类型的实例。用于计算时,True对应整数1,False对应整数0。例如:2.3.2数字运算常用的数字运算如表2-1所示。2.3.2数字运算1.运算的优先级表2-1中,操作符的运算优先级按从上到下的顺序优先级依次从高到低。可以用括号(括号优先级最高)改变计算顺序。例如:2.3.2数字运算2.计算中的自动数据类型转换在遇到不同类型的数字参数运算时,Python总是将简单的类型转换为复杂的类型。例如:Python中的类型复杂度为:布尔型比整数简单、整数比浮点数简单、浮点数比复数简单。2.3.2数字运算3.真除法和floor除法“/”运算称为真除法,这是为了和传统除法进行区别。在Python3.0之前的版本中,“/”运算在两个操作数都是整数时,计算结果只保留整数部分(称为截断除法);在有一个操作数是浮点数时,计算结果才保留小数部分。在Python3.X中,“/”运算执行真除法,即无论操作数是否为整数,计算结果都保留小数部分,其类型为float类型。例如:“//”运算称为floor除法。“x//y”的计算结果为不大于“x/y”的最大整数。当两个操作数都是整数时,结果为int类型,否则为float类型。例如:2.3.2数字运算4.求余数“x%y”计算结果为x除以y的余数,余数符号与y一致。若有一个操作数为浮点数,则结果为浮点数,否则为整数。例如:2.3.2数字运算5.位运算~、&、^、|、、都是位运算符,按操作数的二进制位进行操作。•按位取反~操作数的二进制位中,1取反为0,0取反为1,符号位也参数操作。例如:2.3.2数字运算5.位运算•按位与&将两个操作数按相同位置的二进制位进行与操作,两个位上都是1时,位的与结果为1,否则为0。例如:2.3.2数字运算5.位运算2.3.2数字运算5.位运算2.3.2数字运算6.逻辑运算逻辑运算(也称布尔运算)指逻辑值(True或False)执行not、and或or操作。在判断逻辑值时,属于下列情况的值Python都视为逻辑假:–None–False–各种数字类型的0,例如:0、0.0、(0+0j)等。–空的序列,例如:''、()、[]等。–空的映射,例如:{}。–包含了返回值为0或False的__bool__()或__len__()方法的用户自定义类的实例。上述情况之外的值则视为逻辑真。2.3.2数字运算6.逻辑运算2.3.2数字运算7.比较运算2.3.3小数因为计算机中硬件限制,浮点数有一个缺点就是缺乏精确度。例如:Python2.4起,引入了一种新的数字类型:小数对象。小数可以看作是固定精度的浮点数,它有固定的位数和小数点,可以满足要求精度的计算。2.3.3小数2.3.3小数1.2.3.3小数1.2.3.4分数分数是Python2.6和3.0版本引入的新类型。分数对象明确地拥有一个分子和分母,分子和分母保持最简。使用分数可以有效避免浮点数的不精确性。分数使用fractions模块中的Fraction函数来创建。分数创建后可用于各种计算。例如:2.3.5数学函数2.3.5数学函数2.3.5数学函数2.3.5数字函数2.4变量与动态数据类型C、C++和Java等都属于静态数据类型语言,即要求变量在使用之前必须声明其数据类型(即变量定义)。Python属于动态数据类型语言,其数据类型处理方式有所不同。本节主要讲述:–变量与对象–对象的垃圾回收–变量的命名规则–赋值语句–变量的共享引用2.4.1变量与对象首先分析下面的赋值语句:x=5Python在执行该语句时,其执行过程包含三个步骤。第一步:创建表示整数5的对象。在Python中,所有的数据都是以对象方式存在。第二步:检查变量x是否存在,若不存在则创建它。第三步:建立变量x与对象5的引用。在内存中,引用的实质就是指针,与C语言中的指针类似。在Python中使用变量时,必须理解下面几点:•变量在第一次赋值时被创建,再次出现时直接使用。•变量没有数据类型的概念。数据类型属于对象,类型决定了对象在内存中的存储方式。•变量引用了对象。当在表达式中使用变量时,变量立即被其引用的对象替代。所以变量在使用之前必须为其赋值。2.4.2对象的垃圾回收当对象没有任何引用时,其占用的内存空间会自动被回收——称为自动垃圾回收。在内部,Python为每一个对象创建一个计数器,计数器记录对象的引用次数。当计数器为0时,对象被删除,其占用的内存被回收。2.4.3变量的命名规则Python中变量命名应遵循如下规则:–必须以下划线或字母开头,后面接任意数量的下划线、字母或数字。Python3.x支持Unicode字符,所以汉字等各种非英文字符也可作为变量名。例如,_abc、速度、r_1等都是合法的变量名,而2abc、price$则不是。–变量名区分大小写。Abc和abc是两个不同的变量。–禁止使用Python保留字(或称关键字)。保留字在Python中具有特殊意义,用保留字作变量名会导致语法错误。表2-2列出了Python中的部分保留字2.4.3变量的命名规则除了命名规则外,在Python中使用变量还有一些使用惯例,应尽量避免变量名使用这些样式:–前后有下划线的变量名通常为系统变量,例如,_name_、_doc_都是系统变量。–以一个下划线开头的变量(如_abc)不能被from…import*语句从模块导入。–以两个下划线开头、末尾无下划线的变量(如__abc)是类的本地变量。2.4.4赋值语句赋值语句用于创建变量、建立变量到对象的引用。Python支持多种格式的赋值语句:简单赋值、序列赋值、多目标赋值和增强赋值等。1.简单赋值简单赋值用于为一个变量建立对象引用。例如:2.4.4赋值语句2.4.5变量的共享引用共享引用指多个变量引用了同一个对象。例如:从上面的代码可以看出,将变量赋值给另一个变量时,将会使两个变量引用同一个对象。给变量赋予新的值,会使变量引用新的对象,原来的引用被删除。当变量共享引用时,如果修改了被引用的
本文标题:Python-3基础教程-第2章
链接地址:https://www.777doc.com/doc-1231609 .html