python第四课——运算符

1. 运算符

1.1 运算符的概念

  运算符用于执行程序代码运算,会针对一个以上操作哦数项目来进行运算。例如:2+3,其操作数是2和3,而运算符则是“+”。

1.2 运算符的分类

1.2.1 算术运算符

  • 加法运算符  表现形式+在这里插入图片描述
    在这里插入图片描述
    :当两个字符串进行算术进行加法算术运算时,相当于拼串

  • 减法运算符  表现形式-在这里插入图片描述
    :若是其中一个数是浮点数,所得结果也必为浮点数
    在这里插入图片描述
    :减法运算符不支持的操作数类型-:‘str’和’str’

  • 乘法运算符  表现形式*在这里插入图片描述
    在这里插入图片描述

  • 除法运算符  表现形式/在这里插入图片描述
    注:除法运算所得结果为浮点数

  • //  整除,只会保留计算后的整位数,总会返回一个整型在这里插入图片描述

  • %  取模,求两个数相除的余数在这里插入图片描述

  • **幂运算,求一个值得几次幂在这里插入图片描述

1.2.2 赋值运算符

  赋值运算符的特殊写法x=x+3其实是和x+=3是一样的

  • +=  (x+=3想当于x=x+3)
  • -=  (x-=3相当于x=x-3)
  • *=    (x*=相当于x=x*3)
  • /=   (x/=3相当于x=x/3)
  • //=  (x//=3相当于x=x//3)
  • %=  (x%=3相当于x=x%3)

1.2.3 比较运算符

  比较运算符用来比较两个值之间的关系,总会返回一个布尔值,如果关系成立,返回True,否则返回False
在这里插入图片描述
在这里插入图片描述

  • >   比较左侧值是否大于右侧值
  • >=  比较左侧的值是否大于或等于右侧的值
  • <  比较左侧值是否小于右侧值
  • <=  比较左侧的值是否小于或等于右侧的值
  • 特殊的比较方式
    • ==  比较两个对象的值是否想等
    • =  比较两个对象的值是否不想等
    • is  比较两个对象是否是同一个对象,比较的是对象的id
    • is not   比较两个对象是否不是同一个对象,比较的是对象的id在这里插入图片描述

1.2.4 逻辑运算符

(1)not 逻辑非

  not可以对符号右侧的值进行非运算,对于布尔值,非运算会对其进行取反操作,True变False,False变True。

在这里插入图片描述

0 空串’’ None 还有一些表示空性的值都会转换为False,其他所有值都可以转换为True(只在与或非场景下运用)

(2)and 逻辑与

  and可以对符号两侧的值进行与运算。只有在符号两侧的值都为True时,才会返回True,只要有一个False就返回False。
  与运算是找False的,如果第一个值为False,则不看第二个值。在这里插入图片描述

(3)or 逻辑或

  或运算两个值中只要有一个True,就会返回True。或运算是找True。
在这里插入图片描述

(4)非布尔值的与或运算

  当我们对非布尔值进行与或运算时,python会将其当做布尔值运算,最终返回原值。

  • 与运算的规则

    • 与运算是找False的,如果第一个值是False,则不看第二个值,直接返回第一个值,反之,返回第二个值。在这里插入图片描述
  • 或运算的规则

    • 或运算是找True的,如果一个值是True,则不看第二个值,直接返回第一个值,反之,返回第二个值。在这里插入图片描述
(5)条件运算符(三元运算符)

在这里插入图片描述

  条件运算符在执行时,会先对条件表达式进行求值判断,如果判断结果为True,则执行表达式1,并返回执行结果;如果判断结果为False,则执行表达式2,并返回执行结果

  • 语法:表达式1 if 条件表达式 else 表达式2在这里插入图片描述注:从后前依次划分

1.3 运算符的优先级

【注】从低到高

operatordescription
lambdaLambda expression
if – elseConditional expression
orBoolean OR
andBoolean AND
not xBoolean NOT
in, not in, is, is not, <, <=, >, >=, !=, ==Comparisons, including membership tests and identity testst
|Bitwise OR
^Bitwise XOR
&Bitwise AND
<<, >>Shifts
+, -Addition and subtraction
*, @, /, //, %Multiplication, matrix multiplication, division, floor division, remainder
+x, -x, ~xPositive, negative, bitwise NOT
**Exponentiation
await xAwait expression
x[index], x[index:index], x(arguments…), x.attributeSubscription, slicing, call, attribute reference
(expressions…),[expressions…], {key: value…}, {expressions…}Binding or parenthesized expression, list display, dictionary display, set display

2. 课堂作业

  1. 以四种格式化字符串的方式来实现521 xxx 嫁给我我好吗?
  2. 现在有a,b,c三个变量,三个变量中分别保存有三个数值,请通过条件运算符获取三个值中的最大值。
#第一题:以四种格式化字符串的方式来实现521 xxx 嫁给我好吗?
str='syl'
#第一种:%s
print("521,%s,嫁给我好吗?"%str)

#第二种:f{}
print('521,',f'{str}'',嫁给我好吗?')

#第三种:str.format
print('521,{},嫁给我好吗?'.format(str))

#第四种:拼串
print('521,'+str+',嫁给我好吗?')


#第二题: 现在有a b c三个变量,三个变量中分别保存有三个数值,通过条件运算符获取三个值中的最⼤值
a=input("请输入任意一个数字a:")
b=input("请输入任意一个数字b:")
c=input("请输入任意一个数字c:")
print(c if a<c else a if a>b else c)

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值