1.3 数值运算(Python)

本文介绍了Python中的数值运算符,包括加减乘除、取余、次方以及赋值运算,如+=、-=等,并展示了实际操作示例。同时提到了Python3.8新增的海象运算符:=。对于位运算和运算符优先级,文章给出了简要概述和示例代码。
摘要由CSDN通过智能技术生成

本文来自异想之旅公开发布的Python教程,原文地址:https://www.yuque.com/yxzl/python

例 01 数值运算

计算机最古老的用途是数值计算,所以这固然也是所有编程语言最重要的部分。对于数值的运算符如下:

运算符说明样例特殊说明
所有float 运算在所有计算中均可能出现数位错误,如:0.1 * 3 输出 0.300...004
+加法运算1 + 1 输出 2
-加法运算1 - 1 输出 0
*乘法运算2 * 3 输出 6
/除法运算3 / 2 输出 1.5无论结果是否为整数都返回 float 类型
%取余运算10 % 3 输出 1
**次幂运算2 ** 3 输出 8
2 ** 0.5 输出 1.414...
也可以用函数实现:pow(2, 3)
//整除运算10 // 3 输出 1返回 int 类型,舍弃小数而非四舍五入

代码实现如下:

a = 21
b = 10
c = 0

c = a + b
print ("1: c 的值为:", c)

c = a - b
print ("2: c 的值为:", c)

c = a * b
print ("3: c 的值为:", c)

c = a / b
print ("4: c 的值为:", c)

c = a % b
print ("5: c 的值为:", c)

a = 2
b = 3
c = a**b
print ("6: c 的值为:", c)

a = 10
b = 5
c = a//b
print ("7: c 的值为:", c)

输出内容:

1: c 的值为: 31
2: c 的值为: 11
3: c 的值为: 210
4: c 的值为: 2.1
5: c 的值为: 1
6: c 的值为: 8
7: c 的值为: 2

例 02 赋值运算

计算机最古老的用途是数值计算,所以这固然也是所有编程语言最重要的部分。对于数值的运算符如下:

运算符说明实例
=简单的赋值运算符c = a + b 将 a + b 的运算结果赋值为 c
+=加法赋值运算符c += a 等效于 c = c + a
-=减法赋值运算符c -= a 等效于 c = c - a
*=乘法赋值运算符c _= a 等效于 c = c _ a
/=除法赋值运算符c /= a 等效于 c = c / a
%=取余赋值运算符c %= a 等效于 c = c % a
**=幂赋值运算符c **= a 等效于 c = c ** a
//=整除赋值运算符c //= a 等效于 c = c // a

代码实现如下:

a = 21
b = 10
c = 0

c = a + b
print ("1 - c 的值为:", c)

c += a
print ("2 - c 的值为:", c)

c *= a
print ("3 - c 的值为:", c)

c /= a
print ("4 - c 的值为:", c)

c = 2

c %= a
print ("5 - c 的值为:", c)

c **= a
print ("6 - c 的值为:", c)

c //= a
print ("7 - c 的值为:", c)

输出内容:

1 - c 的值为: 31
2 - c 的值为: 52
3 - c 的值为: 1092
4 - c 的值为: 52.0
5 - c 的值为: 2
6 - c 的值为: 2097152
7 - c 的值为: 99864

除此之外,Python3.8 版本新增海象运算符 := ,可在表达式内部为变量赋值。实例如下:

if n := 10 != 0:
    print(n)

# 输出:10

例 03 位运算(按需了解)

鉴于在实用领域位运算使用较少,加上与其它编程语言完全一样的语法,这里不再赘述位运算的运算符详解,直接贴出 菜鸟教程《Python3:运算符》 的样例代码。如果你希望详细了解这一内容,可以点击超链接访问官网。

a = 60           # 60 = 0011 1100
b = 13           # 13 = 0000 1101
c = 0

c = a & b        # 12 = 0000 1100
print ('#1 c的值为:', c)

c = a | b        # 61 = 0011 1101
print ('#2 c的值为:', c)

c = a ^ b        # 49 = 0011 0001
print ('#3 c的值为:', c)

c = ~a           # -61 = 1100 0011
print ('#4 c的值为:', c)

c = a << 2       # 240 = 1111 0000
print ('#5 c的值为:', c)

c = a >> 2       # 15 = 0000 1111
print ('#6 c的值为:', c)

输出内容:

#1 c的值为: 12
#2 c的值为: 61
#3 c的值为: 49
#4 c的值为: -61
#5 c的值为: 240
#6 c的值为: 15

Python 的运算顺序基本符合数学中的定义,同时也支持通过使用小括号来改变运算顺序。但是 Python 只能使用小括号,如果有多级运算顺序需要改变,只需要多嵌套几层小括号就好,不要随意使用中括号和大括号,它们通常有特殊含义。

下表中列出的是 Python 中所有运算符的优先级关系。部分内容我们赞数没有说到,大家参考已经掌握的即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

异想之旅

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

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

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

打赏作者

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

抵扣说明:

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

余额充值