程序主要是用来处理数据的,那肯定会涉及到很多的运算,本节就来介绍下都有哪些运算。算数运算是最基本的运算,主要有加、减、乘、除、整除、求余、幂运算,如下:
示例:
3+2 # 输出53-2 # 输出13**2 # 输出63/2 # 输出1.53//2 # 输出13%2 # 输出13**2 # 输出9
比较运算主要是用于比较前后两个数的关系,返回布尔值(即True 或 False),如下:
3==2 # 输出False3!=2 # 输出True3<>2 # 输出True3>2 # 输出True3>=2 # 输出True3<2 # 输出False3<=2 # 输出False
逻辑运算用于计算对应条件是否满足,并返回布尔值(即True 或 False ),如下:
| | | | |
| | | | a和b都为真时,返回True;否则,返回False |
| | | | a、b任意为真,返回True;否则,返回False |
| | | | 对a取反。a为真,返回False;a为假,返回True。 |
示例:
a = Trueb = Falsea and b # 输出False a or b # 输出True!a # 输出False
位运算用于计算数值对应的二进制数,并进行位级别的运算,如下:
| | | | |
| | | | |
| | | | |
| | | | ~0011,结果为1100 |
| | | | 0011<< 1,结果为0110 |
| | | | 0011>> 1,结果为0001 |
示例
a=3b=4a&b # 输出:0a|b # 输出:7~a # 输出:-4a<<1 # 输出:6a>>1 # 输出:1
成员运算主要是用于判断元素是否包含在另一个对象里(字符串、列表或元组),返回值为布尔数据(True 或 False)。'he' in 'hello' # 返回True 'he' not in 'hello' # 返回False'she' in 'hello' # 返回False'she' not in 'hello' # 返回True
在Python中,变量会尽量节省内存空间,所以同一个数据通常会占用同一个内存,所以他们实际上是同一个内存空间,只是变量名称不一样。如下:# 以下变量a、b占用同一个内存空间 a = 10b = 10id(a) # 输出:140712414180552 id(b) # 输出:140712414180552 # b重新赋值为20,则a、b占用的是不同的内存空间 b =20id(b) # 输出:140712414180872
内存地址有点长,不方便判断。Python提供了 is和is not两个关键字用于判断两个对象是否是相同的。如下:a = 10b = 10a is b # 输出:Truea is not b # 输出: False b = 20a is b # 输出:Falsea is not b # 输出:True
用身份运算来判断两个变量是否为同一内存空间的数据,语法更简洁易懂。在Python中,利用“ = ”来给变量进行复制,又叫赋值运算。通常,赋值只会给单个变量赋值,但也可以采用链式赋值、序列解包、增量赋值做一些更复杂的运算。最简单的变量赋值方法,将“ = ”号右侧的数值或变量放到左边的变量中。num = 10 # 给变量赋值一个数值 s = 'Hello' # 给变量赋值一个字符串
链式赋值是将一个值同时赋值给多个变量的方法,主要用于简化语句。a = b = 10 # a 和 b 两个变量值都为10
序列解包主要是将特定数量的一组数据,赋值给相同数量的变量,Python解释器自动将数据分配到对应的变量上。a , b = 3 , 4 # 输出:a=3,b=4a , b = (3,4)# 输出:a=3,b=4a , b = (3,(4,5))# 输出:a=3,b=(4,5)
增量赋值是继承C语言的赋值语法,实现操作和赋值同时进行,简化语句而已。num = 10num += 2 # num = 12num -= 1# num = 11num *= 2 # num = 22num /= 2# num = 11
上文已经讲了多种运算,但其实他们还有运算优先级。也就是当多个运算符同时使用的时候,计算的顺序。本文不做优先级说明(跟数学里的差不多),建议使用括号还限制优先级顺序,防止出现运算混乱。另外,实际上还有赋值运算,但不建议使用(仅仅是语法糖而已,说白了少敲些代码),掌握一个赋值符号“=”即可,本文不再赘述。-------------------------它是数字世界里的一把杀猪刀
却总能巧夺天工
它的世界是纯粹0、1组合
却总能创造无尽幻想
......
本公众号关注数据价值分析、编程学习,将不定期更新社会热点数据分析结果、编程技巧,分享数据分析工具、方法、学习等内容,欢迎有兴趣的小伙伴加入。