1、 基本元素基本元素 Python语法特点语法特点 标识符与变量、常量标识符与变量、常量 基本数据类型基本数据类型 基本输入和输出基本输入和输出 常见的运算符与表达式常见的运算符与表达式第二章 Python基本语法参考书目Python 程序设计目录 基本元素基本元素 Python语法特点语法特点 标识符与变量、常量标识符与变量、常量 基本数据类型基本数据类型 基本输入和输出基本输入和输出 常见的运算符与表达式常见的运算符与表达式这里说明图片内容 基本元素基本元素 Python语法特点语法特点 标识符与变量、常量标识符与变量、常量 基本数据类型基本数据类型 基本输入和输出基本输入和输出 常见的运算
2、符与表达式常见的运算符与表达式目录这里说明图片内容 Python程序设计的基本元素Python语言程序设计的基本元素包括:常量、变量、关键字、运算符、表达式、函数、语句、类、包与模块等。常量常量初始化(第一次初始化(第一次赋予值)后就保赋予值)后就保持固定不变的值持固定不变的值变量变量在运行过程中在运行过程中值可以被修改值可以被修改的量的量 使用有意义的名字 多个单词之间为表示区隔,可以用下划线来连接,或者把每个单词的首字母大写 固定不变的常量名称一般用全大写英文字母 一般不用下划线作为开头字符 严格区分大小字母Python程序设计的基本元素函数函数相对独立的功能相对独立的功能单位,可以执行单
3、位,可以执行一定的任务一定的任务语句语句语句是由表达语句是由表达式、函数调用式、函数调用组成的组成的类类同一类事物的同一类事物的抽象抽象如 x=1+2模块模块把一组相关的名把一组相关的名称、函数、类称、函数、类(或者是)它们(或者是)它们的组合组织到一的组合组织到一个文件中。个文件中。包包由一系列模块组由一系列模块组成的集合,包是成的集合,包是一个有层次的文一个有层次的文件目录结构件目录结构运算符运算符用来对数据进用来对数据进行操作的符号行操作的符号赋值、算术、比较、逻辑表达式由常量、变量加运算符构成,如1+2 基本元素基本元素 Python语法特点语法特点 标识符与变量、常量标识符与变量、常
4、量 基本数据类型基本数据类型 基本输入和输出基本输入和输出 常见的运算符与表达式常见的运算符与表达式目录这里说明图片内容 Python语法特点1 命名规范1.模块名尽量短小,并且全部使用小写字母,可以使用下划线分隔多个字母。2.包名尽量短小,并且全部使用小写字母,不推荐使用下划线。3.类名采用单词首字母大写形式。4.模块内部的类采用下划线“_”+Pascal风格的类名组成。5.函数、类的属性和方法的命名规则同模块类似。6.常量命名时采用全部大写字母,可以使用下划线。7.使用单下划线“_”开头的模块变量或者函数是受保护的。8.使用双下划线“_”开头的实例变量或方法是类私有的。Python语法特点
5、2 代码缩进Python采用代码缩进和冒号“:”区分代码之间的层次。缩进可以使用空格键或者键实现。使用空格键时,通常情况下采用4个空格作为一个缩进量,而使用键时,则采用一个键作为一个缩进量。行尾的冒号和下一行的缩进表示一个代码块的开始,而缩进结束,则表示一个代码块的结束。同一个级别的代码块的缩进量必须相同。Python语法特点3 编码规范Python中采用PEP 8作为编码规范。长语句行长语句行建议每行不宜超过建议每行不宜超过80个字符个字符允许但不提倡使用反允许但不提倡使用反斜杠连接行斜杠连接行建议在需要的地方使建议在需要的地方使用圆括号来连接行用圆括号来连接行分号分号不要在行尾添加分号不要
6、在行尾添加分号不要用分号将两条命不要用分号将两条命令放在同一行令放在同一行例如:判断一个年份是否为闰年(判断方法:)。#推荐写法:圆括号连接行year=2000if(year%4=0 and year%100!=0 or year%400=0):print(str(year)+是闰年)#不推荐写法:反斜杠连接行year=2000if(year%4=0 and year%100!=0 or year%400=0):print(str(year)+是闰年)Python语法特点3 编码规范括号括号不建议使用不必要的不建议使用不必要的括号括号空行空行 顶级定义之间空两行顶级定义之间空两行,比如函数或者
7、类定义。比如函数或者类定义。类内部的方法定义之间,类定义与第一个方类内部的方法定义之间,类定义与第一个方法之间,建议空一行。法之间,建议空一行。函数或方法中,如果有必要,可以空一行。函数或方法中,如果有必要,可以空一行。空格空格 在运算符两边各加上一在运算符两边各加上一个空格个空格 不建议在逗号、分号、不建议在逗号、分号、冒号前面加空格,但建冒号前面加空格,但建议在它们后面加空格议在它们后面加空格文档字符串文档字符串 书写文档字符串时,在其前、后使用三重双引号书写文档字符串时,在其前、后使用三重双引号“”或三重单引号或三重单引号“”。一个规范的文档字符串应该首先是一行概述,接着一个规范的文档字
8、符串应该首先是一行概述,接着是一个空行,然后是文档字符串剩下的部分,并且是一个空行,然后是文档字符串剩下的部分,并且应该与文档字符串的第一行的第一个引号对齐。应该与文档字符串的第一行的第一个引号对齐。文档字符串通常用于提供在线帮助信息。文档字符串通常用于提供在线帮助信息。Python语法特点3 编码规范异常处理异常处理不能过多依赖异常处不能过多依赖异常处理结构,适当的显式理结构,适当的显式判断还是必要的判断还是必要的模块导入模块导入每个每个import语句语句只导入一个模块只导入一个模块Python语法特点4 注释规则单行注释单行注释多行注释多行注释 使用使用“#”“#”作为单行注释的符号。作
9、为单行注释的符号。从符号从符号“#”“#”开始直到换行为止,开始直到换行为止,“#”“#”后面所有的内容都作为注释后面所有的内容都作为注释的内容的内容 语法:语法:#注释内容注释内容注释内容注释内容1 1注释内容注释内容2 2或者或者注释内容注释内容1 1注释内容注释内容2 2中文编码声明注释中文编码声明注释语法格式如下:语法格式如下:#-#-*-coding:-coding:编码编码 -*-#coding=#coding=编码编码 基本元素基本元素 Python语法特点语法特点 标识符与变量、常量标识符与变量、常量 基本数据类型基本数据类型 基本输入和输出基本输入和输出 常见的运算符与表达式
10、常见的运算符与表达式目录这里说明图片内容 标识符与变量、常量1 标识符与保留字import keywordprint(keyword.kwlist)1.保留字保留字保留字是Python语言中已经被赋予特定意义的一些单词,开发程序时,不可以把这些保留字作为变量、函数、类、模块和其他对象的名称来使用。可以通过在IDLE中,输入以下两行代码查看保留字:标识符与变量、常量1 标识符与保留字1.由一串字符组成,必须以下划线(_)或字母开头,后面接任意数量的下划线、字母(az,AZ)或数字(09)。2.在Python中,标识符中的字母是严格区分大小写的3.禁止使用Python保留字2.标识符标识符标识符用
11、于标识python语言元素中的变量、函数、类、模块或其他对象的名称,通俗地讲就是名字名字。Python合法的标识符必须遵守以下规则:允许使用汉字作为标识符标识符与变量、常量1 标识符与保留字4.Python中以下划线开头的标识符有特殊意义,一般应避免使用相似的标识符。(1)以单下划线开头的标识符(_width)表示不能直接访问的类属性。另外,也不能通过“from xxx import*”导入;(2)以双下划线开头的标识符(如_add)表示类的私有成员:(3)以双下划线开头和结尾的是Python里专用的标识,例如,“_init_()”表示构造函数。2.标识符(1)开头字符不能是数字。(2)标识符
12、中唯一能使用的标点符号只有下画线,不能含有其他标点符号标识符与变量、常量2 变量的定义与赋值1)变量名必须是一个有效的标识符。2)变量名不能使用Python中的保留字。3)慎用小写字母l和大写字O。4)应选择有意义的单词作为变量名1变量的赋值和存储(1)变量定义在Python中,不需要先声明变量名及其类型,直接赋值即可创建直接赋值即可创建各种类型的变量。变量的命名应遵循以下规则:标识符与变量、常量2 变量的定义与赋值变量名=变量值例如,myvalue=123例如,myvalue=“学习强国”例如,a=b=c=1例如,a,b,c=11,23,python1变量的赋值和存储(1)变量定义变量赋值赋
13、值可以通过等号(=)(=)来实现,其语法格式:数值型的变量字符串类型的变量同时为多个变量赋值为多个对象指定多个变量标识符与变量、常量2 变量的定义与赋值Python语言中的每个对象由标识(identity)、类型(type)和值(value)标识。(1)标识用于唯一地表示一个对象,通常对应对象在计算机内存中的位置,变量变量是存放变量位置的标识符是存放变量位置的标识符。使用内置函数id(obj)可以返回对象obj的标识。(2)类型用于标识对象所属的数据类型(类),数据类型用于限定对象的取值范围以及允许执行的处理操作。使用内置函数type(obj)可以返回对象obj所属的数据类型。(3)值用于表示
14、对象的数据类型的值。使用内置函数print(obj)可以返回对象obj的值。标识符与变量、常量2 变量的定义与赋值fruit_01=苹果变量赋值对于内存的使用情况如下:1)变量fruit_01赋值“苹果”,代码如下:标识符与变量、常量2 变量的定义与赋值fruit_01=苹果fruit_02=香蕉变量赋值对于内存的使用情况如下:2)变量fruit_01赋值“苹果”,变量fruit_02赋值“香蕉”,代码如下:标识符与变量、常量2 变量的定义与赋值fruit_01=苹果fruit_02=fruit_01变量赋值对于内存的使用情况如下:3)变量fruit_01赋值“苹果”,变量fruit_02的值
15、等于fruit_01,代码如下:标识符与变量、常量2 变量的定义与赋值myvalue=学习强国print(id(myvalue)print(type(myvalue)print(myvalue)myvalue=123print(id(myvalue)print(type(myvalue)print(myvalue)Python中变量的类型可以随时变化。【例2-3】使用内置函数type()、id()和print()查看对象。显示结果:35995344学习强国8791221138064123标识符与变量、常量2 变量的定义与赋值1变量的赋值和存储(2)删除变量使用del命令可以删除一个对象(包括变
16、量、函数等),删除之后就不能再访问这个对象。(3)变量引用标识符与变量、常量2 变量的定义与赋值1变量的赋值和存储(4)变量修改赋值Python变量可以通过赋值来修改变量的“值”,但并不是原地址修改。例如,变量X先被赋值为1,然后又被赋值为1.5之后的逻辑如图所示。标识符与变量、常量2 变量的定义与赋值1变量的赋值和存储(4)变量修改赋值变量的值并不是直接存储在变量里,而是以“值”对象的形式存储在内存某地址中。我们可以说变量指向那个“值”对象。因此,PythonPython变量变量里存放的实际是里存放的实际是“值值”对象的位置信息(内存地址)对象的位置信息(内存地址)。这种通过地址间接访问对象
17、数据的方式,称为引用引用。标识符与变量、常量2 变量的定义与赋值1变量的赋值和存储(4)变量修改赋值a=3b=3print(a is b)str1=hellostr2=helloprint(str1 is str2)使用id()id()函数函数可以确切地知道变量引用的内存地址,使用运算符运算符isis可以判断两个变量是否引用同一个对象。【例2-5】运算符is可以判断两个变量是否引用同一个对象。运算结果:TrueTrue标识符与变量、常量2 变量的定义与赋值2.变量值的比较和应用判断 通过“=”运算符可以判断两个变量指向的对象值是否相同 通过“is”运算符可以判断两个变量是否指向同一对象。标识符
18、与变量、常量3 常量的定义常量常量就是程序运行过程中,值不能改变的量,比如现实生活中的居民身份证号码等。PEP 8规范中规定了常量由大写字母和下划线大写字母和下划线组成目录 基本元素基本元素 Python语法特点语法特点 标识符与变量、常量标识符与变量、常量 基本数据类型基本数据类型 基本输入和输出基本输入和输出 常见的运算符与表达式常见的运算符与表达式这里说明图片内容 基本数据类型1 数值类型在Python中,数值类型主要包括3种数据类型:整数(int)、浮点数(float)、复数(complex)。整型整型10浮点型浮点型10.0复复数类型数类型3+2j基本数据类型1 数值类型n=10pr
19、int(isinstance(n,int)运行结果:True内置函数isinstance(obj,class)可以用来测试对象obj是否为指定类型class的实例。【例2-6】内置函数isinstance()测定对象是否为指定类型。基本数据类型1 数值类型0b1010#二进制0o12#八进制10#十进制0 xA#十六进制整型整数类型包括十进制整数、八进制整数、十六进制整数和二进制整数。(1)十进制(2)八进制:由07组成,进位规则是“逢八进一”,以0o开头(3)十六进制:由09,AF组成,进位规则是“逢十六进一”,以0 x/0X开头基本数据类型1 数值类型整型Python中小整数对象池和大整数
20、对象池(对象池即缓存的机制):小整数对象池小整数对象池大整数对象池大整数对象池 小整数的定义:小整数的定义:-5,256-5,256 为小整数对象划定一个范围,即为小整数对象划定一个范围,即小整数对象池小整数对象池 这个范围内的整数对象是被共享这个范围内的整数对象是被共享的,即一次创建,多次共享引用的,即一次创建,多次共享引用 终端是每次执行一次,所以每次的终端是每次执行一次,所以每次的大整数都重新创建大整数都重新创建 处于一个代码块的大整数是同一个处于一个代码块的大整数是同一个对象对象基本数据类型1 数值类型整型【例2-7】在IDLE(Python 3.7 64-bit)环境中验证小、大整数
21、对象池。a=86b=86print(id(a),id(b)a=886b=886print(id(a),id(b)运行结果:8791212486128 879121248612849998576 49998544注:每个计算机的此值可能会有所不同。基本数据类型1 数值类型4.#十进制形式表示,相当于4.0.5#十进制形式表示,相当于0.5-2.7315e2#科学计数法表示,相当于-2.7315x102浮点型浮点数只能以十进制数形式书写。浮点数是带小数的数字,由整数部分和小数部分组成,主要用于处理包括小数的数。基本数据类型1 数值类型num_one=3+2j#直接创建num_two=complex
22、(3,2)#通过内置函数创建复数复数有以下3个特点:1.复数由实部和虚部构成,其一般形式为:real+imag*1j。2.实部real和虚部的imag都是浮点型。3.虚部必须有后缀j或J。Python中有两种创建复数的方式:基本数据类型2 布尔类型1.False或或 None。2.数值中的零,包括数值中的零,包括0、0.0、虚数、虚数0。3.空序列,包括空字符串、空元组、空列表、空字典。空序列,包括空字符串、空元组、空列表、空字典。4.自定义对象的实例,该对象的自定义对象的实例,该对象的_bool_方法返回方法返回False,或,或_len_方法返回方法返回0。Python中布尔类型(bool
23、)表示真假,只有两个取值:True和False。-布尔值可以转化为数值,其中True表示1,而False表示0。-所有的对象都可以进行真值测试。其中,只有下面列出的几种情况得到的值为假,其他对象在if或者while语句中都表现为真。基本数据类型3 NoneType 类型 特殊的常量 None,表示没有值,也就是空值 None 的数据类型为NoneType None 是 NoneType 数据类型的唯一值基本数据类型4 数据类型转换(1)float()函数:将其他类型数据转换为浮点数。函数:将其他类型数据转换为浮点数。(2)str()函数:将其他类型数据转换为字符串。函数:将其他类型数据转换为字
24、符串。(3)int()函数:将其他类型数据转换为整型。函数:将其他类型数据转换为整型。Python是强类型语言。当一个变量被赋值为一个对象后,这个对象的类型就固定了,不能隐式转换成另一种类型。因此Python以转换目标类型名称提供类型转换内置函数。基本数据类型4 数据类型转换(4)round()函数:将浮点型数值圆整为整型。将小数部分函数:将浮点型数值圆整为整型。将小数部分为为.5的数字圆整到最接近的偶数,即的数字圆整到最接近的偶数,即“四舍六入五留双四舍六入五留双”。(5)bool()函数。将其他类型数据转换为布尔类型。函数。将其他类型数据转换为布尔类型。(6)chr()和和ord()函数:
25、进行整数和字符之间的相互转换:函数:进行整数和字符之间的相互转换:chr()将一个整数按将一个整数按ASCII码转换为对应的字符,码转换为对应的字符,ord()是是chr()的的逆运算,把字符转换成对应的逆运算,把字符转换成对应的ASCII码或码或Unicode值。值。(7)eval()函数:将字符串中的数据转换成函数:将字符串中的数据转换成Python表达式原本表达式原本类型。类型。基本数据类型5 对象和引用num=8 print(id(num)运行结果:运行结果:8791092094000 在Python中定义的数据一般称为对象(Object)。Python将对象的数值放到储物柜的某个格子
26、中,并在格式贴上带编号的标签。此时,标签可视为“对象名(name)”,存储到格子中的内容视为对象的“值(Vale)”而对象所在的格子的编号则可视为对象在内存中的地址,Python中将对象的内存地址称为“身份编号(id)”。基本数据类型5 对象和引用num_01=6print(id(num_01)num_01=8print(id(num_01)Python对象的身份id是只读的。Python中的赋值是通过引用实现的。当用户在定义对象时,解释器对象的值放入内存地址,并将该内存块地址的引用赋给对象,经此过程,对象名便等同于内存地址的别名,用户可以通过变量名获取对象的值。在对对象进行修改时,解释器实际
27、上会将新数值放入新内存地址,再将新内存地址的引用赋给待修改对象。基本数据类型6 字符串类型字符串是一种用来表示文本的数据类型,它是由符号或者数值组成的一个连续序列。Python支持使用单引号、双引号和三引号定义字符串,其中单引号和双引号通常用于定义单行字符串,三引号通常用于定义多行字符串。hello itcast使用单引号使用双引号使用三引号hello itcastmy name is itcastmy name is itcast基本数据类型6 字符串类型1.字符串(String)字符串是由字符(比如字母、数字、汉字和符号)组成的序列,是不可变对象。如Python is wonderful!
28、、16300240001、李二毛2.字符串界定符当字符串中含有双引号时,最好使用单引号作为界定符单引号双引号三引号 He said“how are you?”当字符串中含有单引号时,最好使用双引号作为界定符 Its my book常用于多行字符串,可以包含单双引号 Hello 基本数据类型6 字符串类型定义字符串时单引号与双引号可以嵌套使用,需要注意的是,在单引号表示的字符串中可以嵌套双引号,但是不允许嵌套单引号;使用双引号表示的字符串中,允许嵌入单引号,但不允许包含双引号。基本数据类型6 字符串类型3.转义符转义字符是指使用反斜杠“”对一些特殊字符进行转义,即改变原有字符含义的特殊字符。基本
29、数据类型6 字符串类型4.原始字符串原始字符串用于显示字符串原来的意思,不让转义字符生效。要用r或R来定义原始字符串。r”C:PythonPracticenHelloPython.py”基本数据类型6 字符串类型5.字符串的索引字符串是一个由元素组成的序列,每个元素所处的位置是固定的,并且对应着一个位置编号,编号从0开始,依次递增1,这个位置编号被称为索引或者下标。基本数据类型6 字符串类型索引自0开始从左至右依次递增,这样的索引称为正向索引;若索引自-1开始,从右至左依次递减,则索引为反向索引。基本数据类型6 字符串类型通过索引可以获取指定位置的字符,语法格式如下:字符串索引当通过索引访问字
30、符串值时,索引的范围不能越界,否则程序会报索引越界的异常。基本元素基本元素 Python语法特点语法特点 标识符与变量、常量标识符与变量、常量 基本数据类型基本数据类型 基本输入和输出基本输入和输出 常见的运算符与表达式常见的运算符与表达式目录这里说明图片内容 基本输入和输出1基于input()函数输入在Python中可以通过input()函数取键盘输入数据。一般格式为:variable=input()input()函数首先输出提示字符串,然后等待用户键盘输入,直到用户按回车键结束,函数最后返回用户输入的字符串(不包括最后的回车符),保存于变量中,系统继续执行input函数后面的语句。基本输入
31、和输出1基于input()函数输入【例2-10】根据输入的年份,计算年龄大小。import datetimebirthyear=input(请输入您的出生年份:)nowyear=datetime.datetime.now().yearage=nowyear-int(birthyear)print(您的年龄为:+str(age)+岁)实现根据输入的年份(4位数字,如1981),计算目前的年龄,程序中使用input()函数输入年份,使用datetime模块获取当前年份,然后用获取的年份减去输入的年份,就是计算的年龄。基本输入和输出2 基于print()函数输出1.1.print()函数的基本语法函
32、数的基本语法在Python中,使用内置的print()函数可以将结果输出到IDLE或者标准控制台上。一般格式为:print(,sep=,end=n)通过print()函数可以将多个输出值转换为字符串并且输出,这些值之间以sep分隔,最后以end结束。sep默认为空格,end默认为换行。基本输入和输出2 基于print()函数输出在Python中,默认情况下,一条print()语句输出后会自动換行,如果想要一次输出多个內容,而且不换行,可以将要输出的内容使用英文半角的逗号分隔。【例2-11】输出语句示例。print(abc,123)print(abc,123,sep=,)运行结果:abc 123
33、abc,123基本输入和输出2 基于print()函数输出2.print()函数的格式化输出函数的格式化输出在Python中,要实现格式化字符串,可以使用“”操作符。语法格式如下:%-+0mn格式化字符exp基本输入和输出2 基于print()函数输出基本输入和输出2 基于print()函数输出常见格式字符见表:基本输入和输出2 基于print()函数输出如果需要在字符串中通过格式化字符输出多个值,则将每个对应值存放在一对圆括号()中,值与值之间使用英文逗号隔开。print(A%s has%d legs%(monkey,4)输出结果:A monkey has 4 legs基本输入和输出2 基于
34、print()函数输出Python 3还支持用格式化字符串的函数str.format()进行字符串格式化。该函数在形式上相当于通过来代替%,但功能更加强大。format函数还可以用接收参数的方式对字符串进行格式化,参数位置可以不按显示顺序,参数也可以不用或者用多次。print(%.2f%3.1415)print(%5.2f%3.1415)print(0的年龄是1.format(李二毛,2)print(name的年龄是age.format(age=2,name=李二毛)运行结果:3.14 3.14李二毛的年龄是2李二毛的年龄是2基本输入和输出2 基于print()函数输出3.f-strings3
35、.f-strings格式化输出格式化输出name=maomaoage=3sex=男res=f我的名字叫:name.upper(),我今年age+1岁,我是sex生print(res)【例2-13】运行结果:我的名字叫:MAOMAO,我今年4岁,我是男生基本输入和输出2 基于print()函数输出4.4.print()函数输出到文件函数输出到文件fp=open(rc:pythonpracticedata.txt,a+)#打开文件print(生活就像一盒巧克力 你永远不知道下一颗是什么味道。,file=fp)#输出到文件fp.close()#关闭文件【例2-15】将一个字符串“生活就像一盒巧克力
36、你永远不知道下一颗是什么味道。”输出到“c:pythonpracticedata.txt”中。基本输入和输出2 基于print()函数输出5.输出输出ASCII码字符码字符ASCII码是美国信息司信息交换标准码,最早只有127个字母被编码到计算机里,也就是英文大小写字母、数字和一些符号,这个编码表被称为ASCII编码。通过ASCII码表示字符,需要使用chr函数进行转换。例如:print(chr(65),显示内容为A。如果字符显示ASCII值,需要使用ord函数进行转换。例如:print(a),显示内容为97。基本输入和输出2 基于print()函数输出c=input(请输入单个字符:)pri
37、nt(c+的ASCII码为,ord(c)运行结果:请输入单个字符:aa的ASCII码为 97【例2-16】编写程序,实现在键盘输入相应字母、数字或符号,输出其ASCII的状态值,即十进制的数字值。如:输入B,则输出显示为66:输入*,则输出显示为42。基本元素基本元素 Python语法特点语法特点 标识符与变量、常量标识符与变量、常量 基本数据类型基本数据类型 基本输入和输出基本输入和输出 常见的运算符与表达式常见的运算符与表达式目录这里说明图片内容 常见的运算符与表达式1 运算符与表达式概述1.运算符运算符是一些特殊的符号,主要用于数学计算、比较大小和逻辑运算等。Python的运算符主要包括
38、算术运算符、赋值运算符、比较(关系)运算符、逻辑运算符和位运算符。优先级结合性:左结合或右结合使用圆括号可以改变运算符的运算次序操作数目:可以分为单目、双目、三目运算符常见的运算符与表达式1 运算符与表达式概述2.表达式使用运算符将不同类型的数据按照一定的规则连接起来的式子,称为表达式。表达式由运算符和参与运算的数(操作数)组成。按照运算符的种类,表达式可以分成:算数表达式、关系表达式、逻辑表达式、测试表达式等。多种运算符混合运算形成复合表达式,按照运算符的优先级和结合性依次进行运算。很多运算对操作数的类型有要求,例如,加法“+”要求两个操作数类型一致,当操作数类型不一致时,可能发生隐式类型转
39、换。常见的运算符与表达式2 算术运算符与表达式算术运算符包括+、-、*、/、/、%和*,这些运算符都是双目运算符,每个运算符可以与两个操作数组成一个表达式。常见的运算符与表达式2 算术运算符与表达式算术运算符优先级:相同类型之间的数据运算,算术运算符优先级由高到最低顺序排列如下:第一级:*第二级:*,/,%,/第三级:+,-不同类型之间的数据运算,会发生隐式类型转换。转换规则是:低类型向高类型转换。可以进行算术运算的各种数据类型,从低到高排列为:boolintfloatcomplex。常见的运算符与表达式3 赋值运算符与表达式赋值运算符主要用来为变量赋值。使用时,可以直接把基本赋值运算符“=”
40、右边的值赋给左边的变量,也可以进行某些运算后再赋值给左边的变量。运 算 符描 述实 例+=加法赋值遁运算符a+=b等价于a=a+b-=减法赋值运算符a-=b等价于a=a-b*=乘法赋值运算符a*=b等价于a=a*b/=浮点除法赋值运算符a/=b等价于a=a/b/=整除赋值运算符a/=b等价干a=a/b%=取模赋值运算符a%=b等价于a=a%b*=幂赋值运算符a*=b等价于a=a*b常见的运算符与表达式3 赋值运算符与表达式1赋值运算符赋值运算符用“=”表示,一般有3种形式:变量名 =表达式(或变量值)变量名1=变量名2=表达式(或变量值)变量名1,变量名2 =表达式1(或变量值1),表达式2(
41、或变量值2)不要混淆“=”和“=”常见的运算符与表达式3 赋值运算符与表达式1赋值运算符【例2-】输入两个数,交换两个变量的值。str_number01=input(请输入第一个变量:)str_number02=input(请输入第二个变量:)#方式1:利用临时变量交换temp=str_number01str_number01=str_number02str_number02=temp#方式2:原地交换str_number01,str_number02=str_number02,str_number01print(变量一是:+str_number01)print(变量二是:+str_numbe
42、r02)常见的运算符与表达式3 赋值运算符与表达式2.复合赋值运算符复合赋值是运算操作与赋值操作的组合。+=(加等于)-=(减等于)*=(乘等于)/=(除等于)%=(取余等于)*=(幂等于)/=(整除等于)常见的运算符与表达式4 关系运算符与表达式关系运算符也称为比较运算符。用于对两个数值型或字符串型数据,变量或表达式的结果进行大小、真假等比较,返回一个“真”或“假”的布尔值。常见的运算符与表达式4 关系运算符与表达式在比较过程中,遵循以下规则:若两个操作数是数值型,则按大小进行比较。若两个操作数是字符串型,则按“字典顺序”进行比较,即:首先取两个字符串的第1个字符进行比较,较大的字符所在字符
43、串更大;如果相同,则再取两个字符串的第2个字符进行比较,其余类推。常用字符的大小关系为:常用字符的大小关系为:空字符空格09AZaz汉字常见的运算符与表达式4 关系运算符与表达式 浮点数比较是否相等时要注意:因为有精度误差,可能产生本浮点数比较是否相等时要注意:因为有精度误差,可能产生本应相等但比较结果却不相等的情况。应相等但比较结果却不相等的情况。可以用两个浮点数的差距小于一个极小值来判定是否可以用两个浮点数的差距小于一个极小值来判定是否“应该相应该相等等”。在在PythonPython中,当需要判断一个变量是否介于两个值之间时,可中,当需要判断一个变量是否介于两个值之间时,可以采用以采用“
44、值值11变量变量 值值2”2”的形式,的形式,“0 a 10”“0 a 0 else if c 0 else 非正数非正数 常见的运算符与表达式7 位运算符程序中的所有数据在计算机内存中都以二进制形式存储,位运算即以二进制位为单位进行的运算。00001010常见的运算符与表达式7 位运算符Python中的位运算符有位与()、位或(|)、位异或()、取反()、左移位()运算符。常见的运算符与表达式8 运算符的优先级为了避免含有多个运算符的表达式出现歧义,Python为每种运算符都设定了优先级。Python运算符的运算规则是:优先级高的运算先执行,优先级低的运算后执行,同一优先级级的操作按照从左到
45、右的顺序进行。也可以像四则运算那样使用小括号,括号内的运算最先执行。本章小结Python的语法特点:注释、代码缩进和编码规范Python 中的保留字、标识符,以及如何定义变量Python中的基本数据类型基本输入和输出函数的使用Python中的运算符和表达式算术运算符、赋值运算符、比较运算符、逻辑运算符、条件运算符和位运算符。同时使用多个运算符时,优先级高的要比优先级低的先被执行。思考与练习1.录入学生信息(姓名,年龄,性别,成绩),在一行输出:我的姓名是:xxx,年龄是:xxx,性别是:xxx,成绩是:xxx。2.输入一个商品单价、商品数量,收到的金额,计算应该找回多少钱?3.输入一个总秒数,计算几小时零几分钟零几秒钟。4.古代的称一斤16两,输入两位数,换算出是现代的几斤零几两?