python基本知识讲解(掌握一门编程语言)
python基本知识讲解(掌握一门编程语言)结果运算符说明实例
带你走进 @ 机器人时代
Discover 点击上面蓝色文字,关注我们
Python的数据运算方式有算术运算、赋值运算、位运算、比较运算、逻辑运算以及三目运算。
1、算术运算:
运算符 |
说明 |
实例 |
结果 |
|
加 |
8 9.5 |
17.5 |
- |
减 |
9 - 2 |
7 |
* |
乘 |
3*5 |
15 |
/ |
除法(和数学中的规则一样) |
7 / 2 |
3.5 |
// |
整除(只保留商的整数部分) |
7 // 2 |
3 |
% |
取余,即返回除法的余数 |
7 % 2 |
1 |
** |
幂运算/次方运算,即返回 x 的 y 次方 |
2 ** 4 |
16,即 24 |
2、赋值运算:实际就是一个‘=’,注意Python的连续赋值a=b=c=5,如下:
a = b = c = 100
print(a)
print(b)
print(c)
结果:
100
100
100
在编程的过程中,常常用到许多扩展的运算符:
运算符 |
说 明 |
用法举例 |
等价形式 |
= |
基本赋值运算 |
x = y |
x = y |
= |
加赋值 |
x = y |
x = x y |
-= |
减赋值 |
x -= y |
x = x - y |
*= |
乘赋值 |
x *= y |
x = x * y |
/= |
除赋值 |
x /= y |
x = x / y |
%= |
取余数赋值 |
x %= y |
x = x % y |
**= |
幂赋值 |
x **= y |
x = x ** y |
//= |
取整数赋值 |
x //= y |
x = x // y |
&= |
按位与赋值 |
x &= y |
x = x & y |
|= |
按位或赋值 |
x |= y |
x = x | y |
^= |
按位异或赋值 |
x ^= y |
x = x ^ y |
<<= |
左移赋值 |
x <<= y |
x = x << |
>>= |
右移赋值 |
x >>= y |
x = x >> |
3、位运算符:
#位运算
a=5
b=9
print(a&b)#按位与运算
#5在内存中的存储信号是:
# 0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 1001
#9在内存中的存储信号是:
# 0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 0101
#当他们进行&运算时,0&1的值是0,只有1&1的值是1。
# 所以计算结果是:
# 0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 0001
#输出结果为:1
print(a|b)#按位或运算
#与位与运算相反,
# 两个二进制位有一个为 1 时,结果就为 1,
# 两个都为 0 时结果才为 0。
#所以当天5和9的位或运算结果是:
# 0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 1101
#输出结果是13
print(a^b)#按位异或运算
#位异或运算的规则是0^1为 1,0^0为 0,1^1为 0
#所以,上面的计算结果为:
#0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 1100
# 故输出12
print(~b)#按位取反运算
#规则是~1=0 ~0=1
#所以,9的~运算之后为:
#1111 1111 -- 1111 1111 -- 1111 1111 -- 1111 0110
#输出结果为-10
print(a<<b)#左移运算
#把操作数的各个二进制位全部左移若干位,高位丢弃,低位补 0
#5的内存存储左移9位后得到:
#0000 0000 -- 0000 0000 -- 0000 1010 -- 0000 0000
#故显示2560
print(a>>b)#右移运算
#与左移运算相反,把操作数的各个二进制位全部右移若干位,
# 低位丢弃,高位补 0 或 1。
# 如果数据的最高位是 0,那么就补 0;
# 如果最高位是 1,那么就补 1。
#显然,将5>>9之后得到
#0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 0000
#故输出0
得到结果:
1
13
12
-10
2560
0
相关说明已经在注释中,大家可以参考一下。
4、比较运算符:
比较运算 |
结 果 |
> |
大于返回 True或 False |
< |
小于返回 True或 False |
== |
等于返回 True或 False |
>= |
大于等于返回 True或 False |
<= |
小于等于返回 True或 False |
!= |
不等于返回 True或 False |
is |
判断两个变量对象是否相同返回 True或 False |
is not |
判断两个变量对象是否不相同返回 True或 False |
这里需要注意is和==概念不一样,==判断两个变量是否相等,但is是指引用的对象是不是相同,代码:
#比较运算is与==的区别
a=[12 13]
b=[12 13]
print(id(a))#获得内存地址
print(id(b))#获得内存地址
if a == b:
print('正确')
else:
print('错误')
if a is b:
print('正确')
else:
print('错误')
输出结果:
2122569016192
2122568986688
正确
错误
5、逻辑运算:and、or、not返回值是True或 False或其中一个结果,示例如下:
#逻辑运算
a=3
b=4
c=7
d=8
if a<b and c<8 :print('正确')
#两个条件必须同时成立
if a<b or c>d:print('正确')
#两个条件成立其中一个就可以
if not a :
print('正确')
else:
print('错误')
q=a and b
print('a and b的结果' q)
p=a or b
print('a or b的结果' p)
输出结果:
正确
正确
错误
a and b的结果 4
a or b的结果 3
6、三目运算,也叫三元运算。
Python三目运算目的是得到一个结果,可以是返回值( return),也可以是赋值,使代码极大简洁。如下例:
#三目运算
a=5
b=6
c=7
d=8
if a > b:
max = a;
else:
max = b;
# Python中可以写成:
m = a if a>b else b
print(m)
#三目运算可以嵌套
n=a if a>b else c if c>d else d
#等价于:a if a>b else ( c if c>d else d )
print(n)
输出结果:
6
8
Python运算符的优先级别如何呢?
小括号( ) #优先级最高
索引运算符x[i] 或 x[i1: i2 [:i3]]
属性访问x.attribute
乘方**
按位取反~
符号运算符 (正号)、-(负号)
乘除*、/、//、%
加减 、-
位移>>、<<
按位与&
按位异或^
按位或|
比较运算符==、!=、>、>=、<、<=
is 运算符 is、is not
in 运算符 in、not in
逻辑非not
逻辑与and
逻辑或or
逗号运算符 exp1 exp2
if-else
lambda #优先级最低
按照上表的顺序即为优先级顺序。
坚持学习每天都能进步一点点!
往期回顾:
- 来来来,送你一个金牌销售机器人,7X24小时不休,不要工资免费用!
- RPA技术在旅行社销售业务中如何凤凰涅槃??
- 【工资翻三倍】系列:一招搞定九宫图片切割机器人,让你的朋友圈更加炫酷!
本文引用和摘录相关内容,请联系侵删。
- END -
最后,文章有帮助到你的话【点赞在看】
激励我们分享更多的干货!