内容正文:
项目七 设计简单数值数据算法
7.1 数值数据及其运算
数值数据
1
条件表达式
2
3
课堂小结
4
课堂练习
数值数据
1
整数
浮点数
(float)
类别
(int)
取值为整数,包括0和正、负整数,如1是整数
由整数部分和小数部分组成,如1.0是浮点数
常用运算符
常用的算术运算符
运算符 含义 示例 运算结果
+ 加法 53+21 74
- 减法 63.1-2.2 60.9
* 乘法 300*1.5 450.0
/ 除法 1/8 0.125
// 整除 1//8 0
** 次幂 2**3 8
% 求余数 17%3 2
运算优先级,有括号先算括号中表达式,否则:1、次幂;2、乘法、除法、整除和求余;3.加减法
举例
>>> 4.8//1.2
4.0
>>>5//1.2
4.0
>>>7//2
3
>>>3//4
0
>>>2**3
8
>>>16**0.5
4.0
>>>1.6**2.5
3.238172324012421
运算符//执行的是整除运算
运算符执行**次幂运算。a**b等价于数学运算ab
注意:Python语言中进行四则运算的时候,凡是有小数参与到运算中,哪怕计算结果为整数,也是默认保留小数点最后一位的0。
使用除法(/或//)或求余(%)与运算时,除数不能为0。
>>>x=34
>>>x%2
0
>>>x%3
1
>>>x%17
0
>>>x%4
2
运算符%执行的是求余数运算
延伸
注意:a%b求余数,当 a<b时,余数是a本身
计算:5%6=
计算:8/2=
4.0
注意:Python中,除法的运算结果是浮点型数据(float)
复合赋值运算符
练习
C=13
C=10
C+=1+2
print(c)
d=10
d*=1+2
print(d)
d=30
注意:先算复合运算符右侧的表达式,再算复合运算符。
有如下程序:
c=4
c**=1+2
print(c)
则输出结果为( )
A.16 B.64 C.6 D.18
B
例题:
条件表达式
2
在选择结构中需要根据判断条件是否被满足来执行不同的分支语句,在循环结构中则需要根据判断条件是否被满足来决定是否继续执行循环体语句。程序中表示判断条件的式子称为条件表达式,它由关系运算或逻辑运算构成,执的结果为布尔值(True或 False)。
关系运算符
逻辑运算符
01
02
2.1关系运算符
关系运算符也称为比较运算符,它的作用是对两个数据的值进行比较,比较的结果是一个布尔值。用关系运算符连接的表达式称为关系表达式。如果表达式成立,其值为True;如果不成立,其值为False。
Python语言中的6种常用的关系运算符
Python运算符 数学符号 名称 示例(dist=0.87) 结果
< < 小于 dist<1 True
<= ≤ 小于等于 dist<=1 True
> > 大于 dist>1 False
>= ≥ 大于等于 dist>=1 False
== = 等于 dist==1 False
!= ≠ 不等于 dist!=1 True
特别注意:python语言使用“=”表示赋值语句,使用“==”表示“等于”。
思考:
已知a是值是2,b的值是3,以下两个式子表达的意思一样吗?
(1)a=b
(2)a==b
2.1关系运算符
字符和字符串也可以进行比较运算,字符的比较对应字符ASCII码值的大小;字符串的比较按照字典顺序。
小写字母>大写字母>数字>特殊符号
字母大小按照26英文字母顺序,数字按大小顺序
2.1关系运算符
>>>"Python"=="Python"
True
>>>"Python">“python"
False
>>>"C"<"Python"
True
字符串比较的时候,是从左到右扫描,逐个字符比较,以第一对不相等的字符为大小的依据,两个字符比较,按ASCII值来进行。
apple和apply比较:
apple<apply
boy和apply比较:
boy>apply
app和apple比较:
app<apple
已知 dist=0.87,下列常用的关系运算符运算结果错误
的是( )
A.dist>=1 False B.dist==1 False
C.dist!=1 True D.dist<=1 False
D
例题:
2.2逻辑运算符
常用的逻辑运算符包括与(and)或(or)、非(not)。这三种运算符的运算顺序是先not,再and,最后or,但可以使用括号来调整运算的先后顺序。
not
与
and
或
or
非
与
或
例如,判断一个学生是否为体重( weight)大于50千克或者身高( height)小于155厘米的女生( gender: Female),条件表达式可写为:
举例
(gender=="Female")and (weight>50 or height<155)
运算顺序:表达式中的括号可以用于定义运算的优先级,这与数中括号的作用相同。先运算左右两边的表达式,再进行逻辑运算。上式中先执行括号里的or运算,再执行and运算。如果不用括号,使用了如下的条件表达式:
gender=="Female" and weight>50 or height<155
那么表达式先执行and运算,再执行or运算,含义就变成为判断一个学生是否为大于50千克的女生,或者为身高小于155厘米的学生(不分男女)。
与表达式 not x<0 or y%2==0 具有相同功能的是( )
A.x>=0 and y%2==1 B.x>=0 and y//2==0
C.x>0 or y/2==int(y/2) D.x>=0 or y//2==y/2
D
表达式not x<0 or y%2==0的意思是x大于等于0或y是偶数,与表达式not x<0 or y%2==0具有相同功能的是x>=0 or y//2==y/2(//是整除运算符,/是除运算符)
练习:
课堂小结
算术运算符
运算优先级,有括号先算括号中表达式,否则:1、次幂;2、乘法、除法、整除和求余;3.加减法
关系运算符
关系运算符也称为比较运算符,它的作用是对两个数据的值进行比较,比较的结果是一个布尔值。
逻辑运算符
not>and>or
小结
课堂练习:
1.以下属于整数类型的是( )
A.int B.float C.str D.bool
A
课堂练习:
2.下列式子运算错误的是( )
A.300*1.5=450.0 B.1/8=0.125 C.2**3=6 D.17%3=2
C
课堂练习:
3. 表达式 22//4 + 13%5**2 的结果为( )
A.24 B.56 C.25 D.18
//表示整除,%表示求余,**表示次幂。运算等级**>%。故22//4+13%5**2=5+13%25=5+13=18。
D
4.有以下程序:
c=15
c+=2+3
print(c)
则输出结果为( )
A.5 B.20 C.15 D.10
B
课堂练习:
课堂练习:
5.判断a是否在区间[m,n]上,可以使用的条件表达式( )
①m<=a<=n ②a>=m and a<=n ③a>=m or a<=n ④not(a<m or a>n)
A.①②③ B.②③④ C.①③④ D.①②④
D
谢谢
$