《每天五分钟冲击python基础之运算符的运用》(十二)|Python 主题月

860 阅读7分钟

本文正在参加「Python主题月」,详情查看 活动链接

前言

相信有认真学习上节课的同学们,都已经掌握了变量数值类型的运用了,虽然内容确实有点简单,但是还是希望同学们掌握了以后还是要多多练习,那么废话就不多说,让我们开始学习今节课的内容吧!

什么是运算符

运算符是一种特殊的符号,用来表示数据的运算、赋值和比较等。Python语言使用运算符将一个或多个操作连接成可执行语句,用来实现特定功能。 Python语言中的运算符可分为如下几种: ~赋值运算符 ~算术运算符 ~位运算符 ~索引运算符 ~比较运算符 ~逻辑运算符

赋值运算符

赋值运算符用于为变量或者常量指定值,Python使用 “=” 作为赋值运算符,通常,使用赋值运算符将表达式的值赋给另一个变量。例:

st = "python"
pi = st
print(pi)

输出结果:
python

另外说明一下,python也支持连续多个变量进行赋值的,例:

a = b = c = 20
print(b)

输出结果:
20

算术运算符

Python支持所有的基本算术运算符,这些算术运算符用于执行基本的数学运算,如加、减、乘、除和求余等。 +:加法运算符,例:

a = 5.2
b = 3.1
ab_sum = a + b
print(ab_sum)

输出结果:
8.3

-:减法运算符,例:

a = 5.2
b = 3.1
sub = a - b
print(sub)

输出结果:
2.1

此外,“-” 除可以作为减法运算符之外,还可以作为求负的运算符,例:

a = -5.0
x = -a
print(x)

输出结果:
5.0

*:乘法运算符,例:

a = 5.2
b = 3.1
ab_sum = a * b
print(ab_sum)

输出结果:
16.12

/:除法运算符,例:

a = 8
b = 4
ab_sum = a / b
print(ab_sum)

输出结果:
2.0

//:整除运算符,例:

a = 5.2
b = 3.1
ab_sum = a // b
print(ab_sum)

输出结果:
1.0

此外,Python不允许使用 0 作为除数,否则将会引发 ZeroDivisonError错误。

%:求余运算符,python不要求求余运算符的两个操作数都是整数,python的求余运算符完全支持对浮点数求余。求余运算的结果不一定总是整数,它是使用第一个操作数来除以第二个操作数,得到一个整除的结果后剩下的值就是余数,例:

a = 5.2
b = 3.1
ab_sum = a % b
print(ab_sum)

输出结果:
2.1

**:乘方运算符,例:

a = 5 ** 2
print(a)

输出结果:
25

位运算符(简单了解就可以了)

位运算符通常在图形、图像处理和创建设备驱动等底层开发中使用。使用位运算符可以直接操作数值的原始bit位,尤其是在使用自定义的协议进行通信时,使用位运算符对原始数据进行编码和解码也非常有效。 &:按位与 |:按位或 ^:按位异或 ~:按位取反 <<:左位移运算符 .>>:右位移运算符

扩展后的赋值运算符

赋值运算符可以与算术运算符、位运算符等结合,扩展成功能更加强大的运算符。扩展后的赋值运算符如下: 在这里插入图片描述

索引运算符

前面介绍字符串时已经使用了索引运算符,索引运算符就是方括号,在方括号中既可使用单个索引值,也可以使用索引范围。实际上,在使用索引范围时,还可指定步走。例:

a = 'abcdefghijklkmn'
print(a[2:8:3])

输出结果:
cf

比较运算符与bool类型

python提供了bool类型来表示真(对)或假(错),比如常见的 5 > 3 比较算式,这个是正确的,在程序世界里称之为真(对),python 使用 True 来代表; 再比如 4 > 20 比较算式,这个是错误的,在程序世界里称之为假(错),python使用false来代表。

在这里插入图片描述在这里插入图片描述 例:

a = 5 
b = 4
print(a > b)
print(a < b)
print(a >= b)
print(b <= 4)
print(a == b)
print(a != b)
print(a is b)
print(a is not b)

输出结果:
True
False
True
True
False
True
False
True

注: == 与is看上去相似,但实质上有区别,==只比较两个变量的值,但is要求两个变量引用同一个对象。

逻辑运算符

逻辑运算符用于操作bool类型的变量、常量或表达式,逻辑运算的返回值也是bool值。 python的逻辑运算符有如下三个: and:与,前后两个操作数必须都是 True 才返回 True;否则返回false or:或,只要两个操作数中有一个是 True,就可以返回 True;否则返回 false not:非,只需要一个操作数,如果操作数为True,则返回False;如果操作数为False,则返回True

例:

print(5 > 3 and 20 > 5)
print(5 > 6 or 20 > 5)
print(not 5 > 6)

输出结果:
True
True
True

三目运算符(重点) 是与其他编程语言不同的

python可通过if语句来实现三目运算符的功能,因此可以近似地把这种if语句当成三目运算符,作为三目运算符的if语句的语法格式如下:

True_statements if expression else False_statements

例:

a = 5
b = 3
st = "a大于b" if a > b else "a不大于b"
print(st)

输出结果:
a大于b

python允许在三目运算符的 True_statements 或 False_statements 中放置多条语句。Python主要支持两种放置方式: 多条语句以英文逗号隔开:每条语句都会执行,程序返回多条语句的返回值组成的元组

多条语句以英文分号隔开:每天语句都会执行,程序只返回第一条语句的返回值

第一种情况,例:

a = 5
b = 4
st = print("python三目运算符"), "a大于b" if a > b else "a不大于b"
print(st)

输出结果:
python三目运算符
(None, 'a大于b')

第二种情况,例:

a = 5
b = 4
st = print("python三目运算符"); "a大于b" if a > b else "a不大于b"
print(st)

输出结果:
python三目运算符
None

in运算符

python提供了 in 运算符,用于判断某个成员是否位于序列中,比如前面介绍的str就是一个序列,因此程序可使用 in 运算符判断字符串是否包含特定子串 除 in 运算符之外,python也提供了 in 的反义词:not in 例:

s = 'crazyit.org'
print('it' in s)
print('it' not in s)

输出结果:
True
False

运算符的结合性和优先级

所有的数学运算都是从左向右进行的,python语言中的大部分运算符也是从左向右结合的,只有单目运算符、赋值运算符和三目运算符例外,它们是从右向左结合的,也就是说,它们是从右向左运算的。

乘法和加法是两个可结合的运算符,也就是说,这两个运算符左右两边的操作数可以互换位置而不会影响结果。

运算符有不同的优先级,所谓优先级就是在表达式运算中的运算顺序,以下就是它们的优先级顺序排序 在这里插入图片描述

课后问答

1、为什么没有视频教程的? 答:视频教程已经在筹备录制当中了,麻烦各位同学耐心等待

2、课程每天都会更新吗? 答:课程不是每天都更新的,因为我本人的工作时间也比较忙,所以很难跟你们保证每天都更新教程,大概每个星期更新 2 到 3 次左右吧!

3、现在都是学python基础的,后面还会继续学习python实战的吗? 答:因为本教程是免费面向 0 基础入门的同学,所以先从 基础开始 学习,你们可以先关注下面的公众号,留意公众号的通知,等基础篇更新后,就会在持续的更新实战篇(包括:爬虫、django、flask、大数据、人工智能等)

课外监督

最近一部分同学在后台私聊我说,自己每天都准备要学习了,但是一去到电脑桌上就是提不起劲来,怎么办呢?针对这种情况的同学,我决定每天花一点时间对你们学习进行监督和辅导,如有需要的同学,点击 “联系作者” 进行报名。

结语

课程的内容只有那么多了,希望每个同学都能认真地去学习好每一节课,记住学习编程的道路真的有点苦,但是每天都能坚持下来了,就肯定会有很大的收获,下节课会出一些练习题,内容是关于前面基础学习的巩固的,敬请期待。