Python运算符

运算符

数学运算符

python中的数学运算符和数学上的数学运算符作用是一样的,只是表达方式不一样。

数学运算符:+(加)、-(减)、*(乘)、/(除)、//(整除)、%(取余,取模)、**(幂运算)
1.+(加)、-(减)、*(乘)、/(除)和数学的+、-、×、÷是一样的。
2.//(整除):
x // y - 求x除以y的商,商向小取整(找和小数相邻的两个整数中较小的那个)
应用1:希望能整除的情况下商是整型

print(4 / 2)  # 2.0
print(int(4 / 2))  # 2
print(4 // 2)   # 2

应用2:去掉(砍掉)一个整数的低位数,保留高位数

num = 2345
print(num // 10)   # 234
print(num // 100)  # 23

3.% - 取余,取模:
x % y - 求x除以y的余数
应用1:判断两个数字之间的整除关系 - 判断余数是否为0

print(78 % 2)

应用2:去掉高位数,保留低位数

num = 27283
print(num % 10)    # 3
print(num % 100)   # 83

4.** - 幂运算:
x ** y - 求x的y次方
注意:/的结果一定是浮点数;其他运算符的运算结果的类型和运算对象有关

print(2 ** 3)
print(5 ** 4)
print(16 ** 0.5)
print(2**-3)

注意:/的结果一定是浮点数;其他运算符的运算结果的类型和运算对象有关

print(10 + 3.0)     # 13.0
print(2.5 * 2)      # 5.0
print(5 / 1)     # 5.0

比较运算符

比较运算符:>、<、==(等于)、!=(不等于)、>=、<= (!号是英语状态下的)
注意1:所有的比较运算符的运算结果都是布尔值。

print(10 > 30)  # False
print(10 < 30)   # True
num = 89
# 判断num对2取余的结果是否为0
print('是否是偶数:', num % 2 == 0)   # 是否是偶数: False

注意2:python的比较运算符直接连写表示范围

x = 2
print('x是否在0-1之间:', 0 <= x <= 1)   # x是否在0-1之间: False

逻辑运算符

单一条件:只有一个条件,得出结果True或者False
复合条件:并且(要求多个条件同时成立)、或者(要求多个条件中只要有一个条件成立就行)
1.and - 逻辑与运算符
应用场景:如果需要多个条件同时满足,就用and连接。相当于生活中的”并且“
运算规则:条件1 and 条件2 - 如果两个条件都成立结果是True,只要有一个不成立结果就是Flase
True and True - True
False and True - False
True and False - False
False and False - False
练习1:写条件判断num是否是大于10的偶数

num = 31
# 分析条件的类型:看是单一条件还是复合条件
# 所有的条件:大于10(num > 10)、是偶数(num % 2 == 0)
# 分析连接方式:num > 10 and num % 2 == 0
print('num是否是大于10的偶数:', num >= 10 and num % 2 == 0)

练习2:写条件判断num是否能够同时被3和7整除

num = 34
# 类型:复合
# 能被3整除(num % 3 == 0)、能被7整除(num % 7 == 0)
print('num是否能够同时被3和7整除:', num % 3 == 0 and num % 7 == 0)

2.or - 逻辑或运算符
应用场景:如果要求多个条件中有一个条件成立就行,就用or连接;相当于生活中的或者
运算规则:条件1 or 条件2 - 如果两个条件都不成立结果就是False,只要又一个条件成立结果就是True
True or True - True
False or True - True
True or False - True
False or False - False
练习1:判断num是否能被3或者5整除

num = 23
print('num是否能被3或者5整除:', num % 3 == 0 or num % 5 == 0)

练习2:判断year是否是闰年

year = 2000
print('year是否是闰年:', (year % 4 == 0 and year % 100 != 0) or year % 400 == 0)

3.not - 逻辑非运算符
应用场景:对指定的条件进行否定(如果一个条件正向写情况很多很复杂,反向却非常简单,就可以讲条件反向写在加not)
运算规则:not 条件
not True - False
not False - True
练习:判断num不是偶数

num = 89
print('num是否是偶数:', not num % 2 == 0)
print('num是否是偶数:', num % 2 != 0)

赋值运算符

赋值运算符:=、+=、-=、*=、/=、%=、//=、**=
注意:所有赋值运算都是用来给变量赋值的,所以赋值运算表达式没有结果(不能提供一个数据)
1.= :直接赋值
变量 = 数据 - 将数据保存到变量中, 变量既可以是已经定义过的变量,也可以是没有定义过的变量.
2.复合赋值运算符
变量 += 数据 - 先将变量中的数据取出来,然后和后面的数据进行加法运算,然后将计算结果再赋值给变量。(变量必须是已经定义过的变量,并且里面保存的数据,可以和后面的数据进行加法运算)

a = 20
a += 10         # a = a + 10  -> a = 20 + 10  -> a = 30
print(a)        # 30
a -= 5          # a = a - 5  -> a = 30 - 5  = 25
a *= 2          # a *= 2  -> 25 * 2  -> a = 50
a %= 3          # a = a % 3  -> a = 50 % 3 = 2
print(a)        # 2

注意:所有的赋值数据都是没有结果,无法提供数据;除赋值运算符以外,其他运算符都有结果。

# print(a = 10)
# print(age += 20)
# a = (b = 1)
print(10 + 20)
print(10 > 20)

运算符优先级

如果一个表达式中有多种运算符,谁的优先级高就算谁:
1.数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符(最低的)
2.不同的数学运算符的优先级数学一样。(** > *、/、%、// > +、-)
3.有括号先算括号里面的 - ()

分支结构

1.程序执行过程(顺序结构):
默认情况下,程序从上往下按顺序一条一条的执行,每一条语句都会执行并且只会执行一次。

2.分支结构(if) - 让程序根据条件执行代码
1)if单分支结构 - 如果xxx就xxx(满足条件执行某个操作,条件不满足的时候这个操作就不执行)
语法:
if 条件语句:
(缩进) 代码段
说明:
(1) if - 关键字;固定写法
(2) 条件语句 - 可以是任何有结果的表达式(比如:具体的数据、运算表达式、已经定义过的变量等,只有赋值语句不行);一般将结果是布尔的表达式作为条件.
(3) : - 固定写法(注意输入法问题)
(4) 代码段 - 结构上,就是和if保持一个缩进的一条或者多条语句(至少一条!!!);逻辑上,就是满足条件才会执行代码。
执行过程:先判断条件语句是否成立(如果条件语句的结果不是布尔,就转换成布尔看是否是True),如果成立就执行代码段;条件不成立,代码段就不执行。

age = 18
if age >= 18:
    print('成年!')
num = 230
if num % 2 == 0:
    print('偶数')

2)if双分支结构 - 如果xxx就xxx否则就xxx(条件成立执行某个操作,不成立就执行另外一个操作)
3)语法:
if 条件语句:
(缩进)代码段1(满足条件执行的代码)
else:
(缩进) 代码段2(不满足条件执行的代码)
练习1:根据age的值打印成年或者未成年

age = 29
if age < 18:
    print('未成年')
else:
    print('成年')

练习2:根据year的值打印’闰年’或者’平年’

year = 2004
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print('闰年')
else:
    print('平年')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值