【Python 第4课】 运算符与表达式

先提问: 运算符是什么?表达式是什么?

我们先来说运算符。

运算符是一些可以用 + 号或其他关键词符号(如:+,-,*,/)替代的功能。运算符会对相关数据进行运算,这些被运算的数据称为操作数。

下面列出了常用的运算符

+ (加)

- (减)

* (乘)

** (乘方)

/ ()

// (除且取整)

% (取模)

<< (左移)

>> (右移)

& (按位与)

| (按位或)  

^ (按位异或)

~ (按位取反)

< (小于)

> (大于)

<= (小于或等于)

>= (大于或等于)

== (等于)

!= (不等于)

not (布尔非)

and (布尔与)

or (布尔或)

这么多的运算符,会不会看的脑袋有点晕?嘻嘻,别慌,我们用代码来看这一连串的运算符。

# + (加)

# 将两对象相加

print(4+5)  # 看看打印的结果是多少?

print('虎' + '哥')



# - (减)

# 将一个数减去另一个数

print(-67)

print(100-11)



# * (乘)

# 得到两个数相乘的值,或者将一个字符串重复若干次。

print(3*4)

print('虎' * 3) # 想不到吧,字符串也可以做乘法



# ** (乘方)

# 返回 x 的 y 次幂

print(2**4) # 2**4 的算术展开式: 2*2*2*2



#/ (除)

# x 除以 y

# 13 / 3 得到 4.333333333333333

print(14 / 5)



# // (除且取整)

# x 除以 y 并返回小于商的最大整数,注意,如果操作数之一为浮点数,则返回值必为浮点数。

print(14//5)

print(-13//3)   # 注意这里   是向下取整除法

print(10//3.14) # 注意这里  是向下取整除法



#% (取模)

#返回作除法之后的余数。

#13 % 3 得到 1. -25.5 % 2.25 得到 1.5.

print (10%4)        

print (-10%4) # 注意这里  是向下取整除法,并且注意,Python中的% 与 C语言的%运算符的意思是完全不同的



# <<,>>,&,|,^,~ 这几个都是按位操作的

#<< (左移)

#将数字位向左移动指定的位数。每个数字在内存中用位或二进制数(如 0 和 1 )表示。

print(2<<3)     # 2的二进制为10,10左移3位 得10000,十进制16.



# >> (右移)

#将数字按位向右移动指定的位数。

#根据上面的例子,我们用16向右移动4位,结果会是多少呢?同学们去打印一下

print(16>>4)    # 16 的二进制为10000,右移4位,那么结果应该为1.



#& (按位与)

#数字的按位与, 是按照数的二进制的按位与

# 6 & 4 得到 4。  也就是110 & 100 = 100

print(6&4)



# | (按位或)

# 数字的按位或, 是按照数的二进制的按位与

# 6 | 4 得6 ,    110 | 100 = 110

print(6|4)  



#^ (按位异或)

#数字的按位异或

# 6 ^ 4 得到 2, 110 ^ 100 = 10

print(6^4)



#~ (按位取反)

#x 按位取反是 -(x+1)

#~6 得到 -7。   

print(~6)



#< (小于)

#返回 x 是否小于 y 。比较运算符只返回 True 或 False。 

#9 < 6 得到 False ,而 6 < 9 得到 True。

print(9<6)

print(6<9)



#> (大于)

#返回 x 是否大于 y

#9 > 6 返回 True。 6>9 返回 False.

print(9>6)

print(6>9)



#<= (小于或等于)

#返回 x 是否小于或等于 y

#x = 6; y = 9; x <= y 返回 True

print(6<=9)



# >= (大于或等于)

# 返回 x 是否大于或等于 y, True,或者 False

print(6>=9)



# == (等于)

#比较一下对象是否相等, 可以是数字的比较,也可以是字符串的比较,还可以是对象(之后在说对象)的比较

# x = 6; y = 9; x == y 返回 False

x = 6

y = 9

print(x == y)

# x = 'fff'; y = 'ffA'; x == y 返回 False

x = 'fff'

y = 'ffA'

print(x == y)

# x = 'FFF'; y = 'FFF'; x == y 返回 True

x = 'fff'

y = 'fff'

print(x == y)



#!= (不等于)

#比较一下对象是否不相等

#x = 2; y = 3; x != y 返回 True

x = 6

y = 9

print(x != y)



# 同样也可以字符串的比较

x = 'fff'

y = 'fff'

print(x != y)



# not (布尔非) 

# 如果 x 为 True,它会返回 False。 如果 x 为 False,它会返回 True。

x = True; 

print(not x)



#and (布尔与)

#如果 x 为 False , x and y 返回 False 。否则,返回 y 的值

x = False

y = True

print(x and y) #因为 x 为False了,在这种情况下, Python 不会计算 y ,因为它知道 ‘and’ 表达式的左边为 False,在去计算右边的y值,就没有意义了





#or (布尔或)

# 如果 x 为 True,它会返回真,否则返回 y 的值

x = True

y = False

print(x or y) # 返回 True。在这种情况下, Python 不会计算 y ,因为它知道 ‘or’ 表达式的左边为 True,在去计算右边的y值,就没有意义了,也就是不管y是True,或者False,都返回True。


 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

chen249191508

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值