Python中的运算符

我是python小白,我用比较简单的知识分享一下python中的运算符

·算术运算符

·赋值运算符

·比较运算符

·布尔运算符

·位运算符

常用运算符

①:算术运算符

常见的+,-,*,/,//整除运算,%,**(几次方)。

 需要注意的是:一正一负的运算是向下取整。

print(9//4)#2
print(-9//-4)#2
print(9//-4)#-3

print(9%-4)#-3 公式  余数=被除数-除数*

②:赋值运算符

运算顺序,从右向左执行

a=3+4;

print(a)

支持链式赋值

a=b=c=20

print(a,id(a))

print(b,id(b))

print(c,id(c))

最后我们会发现他们的地址是一样的

 

支持参数赋值:

a=20

a+=30

a-=50类似的

支持系列解包赋值:

a,b,c=20,30,40

这样做有什么好处呢,我们来看交换两个变量值的时候。

a,b=10,20

a,b=b,a

print(a,b)

③:比较运算符

结果是布尔类型就是True或者False

a,b=10,20
print('a>b吗?',a>b)

a>b吗?输出就为: False

a=10

b=10

print(a is b)

print(a==b)

输出结果一样

④:布尔运算

A,b=1,2

and语句

print(a==1 and b==2)

输出为True

print(a==1 and b<2)

输出为False

print(a!=1 and b=2)

输出结果为False

总结 有一个为False输出为False

or语句

print(a==1 or b==2)

print(a==1 or b<2)

print(a!=1 or b==2)

print(a!=1 or b!=2)

只要有一个运算符为True,运算结果为True

Not语句

F=True

F2=False

print(not F)

in与not in

s=‘helloworld’

Print(‘w’ in s)

Print(‘k’ in s)

输出也为布尔类型

⑤:位运算符

&同为1时出1

print(4&8)

输出结果为0

因为按二进制来算,最后就是0

|同为0时出0

print(4|8)

输出结果为12

>>左移,<<右移

向左移动一位,相当于×2

向右移动一位,相当于×0.5

最后,说一下运算符的运算顺序

先算乘除,再算加减,有幂运算先计算幂运算。

先算算数运算,再去算位运算,再算比较运算。

最后的最后,我说一下input()函数

Input()函数的介绍

Present=input(‘我是python小白’)

present=input('我是python小白')
print(present)

 

接下来,我们做一个题,就是输入两个数,让两个数相加

#从键盘录入两个整数
a=input('请输入一个加数')
b=input('请输入另一个数')
print(a+b)

 

可以看到,输出结果并不是我们想要的

解决方法就是加上

a=int(a)

b=int(b)

或者直接a=int(input(‘请输入一个加数’))

两种方法都可以

Python 包含三个核心逻辑运算符,分别为 `and`(逻辑与)、`or`(逻辑或)、`not`(逻辑非),它们可以在布尔值之间执行逻辑 AND、OR 和 NOT 运算 [^1][^2]。 ### 各运算符描述及示例 | 运算符 | 描述 | 示例 | 结果 | | --- | --- | --- | --- | | and | 逻辑与,若两个操作数都为 True,则返回 True;否则返回 False | `True and True` | `True` | | or | 逻辑或,若两个操作数至少有一个为 True,则返回 True;只有当两个操作数都为 False 时,才返回 False | `False or True` | `True` | | not | 逻辑非,对操作数的布尔值取反 | `not False` | `True` | [^2] ### 真值表与运算规则 #### `and` 运算符 | 左操作数 | 右操作数 | 结果 | | --- | --- | --- | | True | True | True | | True | False | False | | False | True | False | | False | False | False | #### `or` 运算符 | 左操作数 | 右操作数 | 结果 | | --- | --- | --- | | True | True | True | | True | False | True | | False | True | True | | False | False | False | #### `not` 运算符 | 操作数 | 结果 | | --- | --- | | True | False | | False | True | [^2] ### 短路求值特性 #### `and` 的短路行为 在 `and` 运算中,如果第一个操作数为 `False`,则不会计算第二个操作数,因为无论第二个操作数是什么,整个表达式的结果都是 `False`。 ```python def check(): print("执行检查") return True print(False and check()) # 输出 False,不执行check() ``` #### `or` 的短路行为 在 `or` 运算中,如果第一个操作数为 `True`,则不会计算第二个操作数,因为无论第二个操作数是什么,整个表达式的结果都是 `True`。 ```python def load_data(): print("加载数据") return [] print(True or load_data()) # 输出 True,不执行load_data() ``` #### 实际应用:避免除零错误 利用 `and` 运算符的短路特性,可以避免危险的计算,如除零错误。 ```python x = 0 if x != 0 and (10 / x > 2): # 安全判断 print("条件成立") else: print("跳过危险计算") ``` [^2] ### 运算符优先级 逻辑运算符Python 中有其特定的优先级,在复杂的逻辑表达式中,需要注意运算符的优先级以确保表达式按预期计算。不过具体优先级顺序在引用中未详细提及,一般可通过查阅 Python 官方文档获取准确信息。 ### 示例代码 ```python a = 10 b = 10 c = -10 if a > 0 and b > 0: print("The numbers are greater than 0") if a > 0 and b > 0 and c > 0: print("The numbers are greater than 0") else: print("Atleast one number is not greater than 0") ``` 这段代码展示了 `and` 运算符的使用,第一个 `if` 语句中 `a > 0` 和 `b > 0` 都为 `True`,所以会输出相应信息;第二个 `if` 语句中由于 `c > 0` 为 `False`,所以整个 `and` 表达式为 `False`,会执行 `else` 语句的内容 [^3]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值