学习Python Day2 ——运算符与分支结构

学习Python Day2 ——运算符与分支结构

运算符

python中的运算符通常分为:数学运算符、比较运算符、逻辑运算符、赋值运算符以及位运算符。

数学运算符

数学运算符有:+(加法运算)、-(减法运算)、*(乘法运算)、/(除法运算)、%(取余)、

//(整除)、**(幂运算)

其中+、-、*、/ 是生活中比较常见的运算,相信大家也都会运用,再次就不一一说明了。

% —— 取余、取模(数学中的求余数)
a = 10 % 3
print(a)	# 结果为1

在python中取余一般用来判断一个数是否能够被另一个数整除

num = int(input("请输入一个整数:"))
result = num % 3
if result == 0:
    print("能被3整除")
else:
    print("不能被3整除")

也可以用来取整数的低位数

print(5845 % 100)	# 45
print(21 % 10)		# 1
// —— 整除(商取整)

x // y —— x 除以 y 的商向小取整

print(5 // 2)   # 2
print(-5 // 2)  # -3

在python中可以应用于去掉低位数

num = 23562
print(num // 100)   # 235
** —— 幂运算

x ** y —— 求 x 的 y 次方

print(2 ** 3)   # 8
print(3 ** 3)   # 27
# 如果次方数是 1/n 表示开 n 次方
print(4 ** 0.5)    # 2.0
print(8 ** (1 / 3))    # 2.0

比较运算符

比较运算符有:> 、<、 >=、 <=、 ==、 !=

所有的比较运算符的运算结构都是布尔值:True 、False

逻辑运算符

逻辑运算符:and(逻辑与) 、or(逻辑或)、not(逻辑非)

"""
and - 逻辑与
相当于并”并且“,当需要多个条件同时满足的时候使用
运算规则:都是True结果就是True,只要有一个是False结果就是False
        True and True -> True
        True and False -> False
        False and False -> False
"""
"""
or - 逻辑或运算
应用场景:相当于“或者”,需要多个条件中只要有一个条件满足的时候使用
运算规则:都是False结果才是False,只要有一个是True结果就是True
        True or True -> True
        True or False -> True
        False or False -> False
"""
"""
not - 逻辑非
应用场景:对某一个条件进行否定
运算规则:True 变 False,False 变 True
        not True -> False
        not False -> True
是么时候用not:如果一个条件正向写很麻烦,但是反向写很简单,就反向写条件然后加not
"""

运算符的优先级

数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符

数学运算符:** > * 、/ 、 % 、 // > +、-

逻辑运算符:and > or

注:如果有括号就先算括号里面的内容

位运算

位运算:&(按位与)、|(按位或)、^(按位异或)、~(按位取反)、>>(右移)、<<(左移)

位运算的运算效率比一般的运算符都要高,高出几十倍到几百倍

运算符 & 可以用来判断整数的奇偶性

# 数字对1进行按位与运算,如果结果是1就是奇数,结果是0就是偶数
print(28 & 1,32 & 1,102 & 1,-32 & 1)    # 0 0 0 0
print(11 & 1,9 & 1,-23 & 1,1005 & 1)    # 1 1 1 1

运算符 <<、>>

# 数字 << N  - 快速乘 2**N
# 数字 >> N  - 快速整除 2**N
# 数字 << 1 - 快速乘2:数字*2
# 数字 >> 1 - 快速整除2:数字//2
print(4 << 1, 5 << 1, 5 << 2)     # 8 10 20
print(4 >> 1, 5 >> 1, -5 >> 1)   # 2 2 -3

分支结构(if)

简单的来说python的分支结构就是 if 语句,根据条件选择性的执行代码。

执行过程:
先判断条件语句1是否为True,如果是直接执行代码块,然后整个if结构直接结束;
如果不为True,就判断条件语句2是否为True,如果是就执行代码块2,然后整个if结束;
如果不为True,就岸段条件语句3是否为True,…
以此类推,如果前面的条件语句都不满足就执行else后面的代码块

grade = int(input("请输入绩点:"))
if grade > 4:
    print("一等奖学金")
elif grade >= 3.5:
    print("二等奖学金")
elif grade >= 3:
    print("三等奖学金")
elif grade >= 2.5:
    print("四等奖学金")
else:
    print("没有奖学金")

猜你喜欢

转载自blog.csdn.net/zhaoxin0917/article/details/108760935
今日推荐