关于数值运算呢,就要说到运算符的使用。
1、算数运算符
因为是整数,所以也可以进行数学中的基本运算。
算数运算符是运算符的一种
算是完成基本的算数运算使用的符号,用来处理四则运算。
取余数
比如 three 的值为3 , ten 的值为10,然后通过 print 计算当前运算。
three = 3
ten = 10
print(ten % three)
这个是取余算法,%是取余的符号,首先做为一个除法,10 % 3 然后取它的余数,余数为1 。
取整数
再试试取整除运算
three = 3
ten = 10
print(ten // three)
10 除以 3 以后,结果为 3.33333 无限循环,然后用两个// 作为运算,表示取整,那么结果就是3 。
运行一下
幂
幂运算又叫做次方或者乘方
three = 3
ten = 10
print(ten ** three)
在这里它是取的 10 的 3 次幂 ,相当于10x10x10
看看结果
加减乘除我就不一一列举了,可以对照这个表。
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 10 + 20 = 30 |
- | 减 | 10 - 20 = 10 |
* | 乘 | 10 * 20 = 200 |
/ | 除 | 10 / 20 = 0.5 |
// | 取整除 | 返回除法的整数部分(商)9 // 2 输出结果 4 |
% | 取余数 | 返回除法的余数 9 % 2 = 1 |
** | 幂 | 又称次方、乘方,2 ** 3 = 8 |
运算符的优先级
和数学中的运算符优先级一样,在Python中进行数学计算式,同样也是:
- 先乘除后加减
- 同级运算符是 从左到右 计算
- 可以使用 () 调整计算的优先级
来看表格
运算符 | 描述 |
---|---|
** | 幂(最高优先级) |
*/%// | 乘、除、取余数、取整数 |
+ - | 加法、减法 |
例如
2 + 3 * 5 = 17
(2 + 3) * 5 = 25
2 * 3 + 5 = 11
2 * (3 + 5) = 16
2、赋值运算符
来实际操作一下
ten += three
计算结果是这样 ten = ten + three
ten 和 three 两个变量相加,通过 += 这个赋值运算符号,把结果赋给左边的变量。
打印一下看看
print ('-------------------------------------------------------------------')
ten += three
print(ten)
可以看到结果为13
所以说两个变量相加,通过赋值运算把结果赋给左边的变量。
除了+= 的话,还有其它的。
来看表,一下假设变量 a 为 10 , 变量 b 为 20 ;
运算符 | 描述 | 实例 |
---|---|---|
= | 简单的赋值运算符 | 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 |
3、水仙花案例
水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)
以371为例,判断371 是不是水仙花数。
1)取个位数
我们把它每个位数取出来,首先取个位数,个位数怎么去取呢?
371定义一个number
number = 371
然后用number取余10,结果就是个位数余1。
number = 371
g = number % 10
print(g)
打印一下
2)取十位数
然后再来取十位数
同样的通过number除以10,就产生小数位了,然后取余数。
number / 10 % 10
通过S打印一下
number = 371
s = number / 10 % 10
print(s)
结果
可以看到他这里有一个小数位,咱们通过 int 做一下处理,把它强制转换为一个整数。
number = 371
s = int(number / 10 % 10)
print(s)
打印结果
3)取百位数
百位数就更加好取了,咱们直接取整100,然后用b这个变量接收一下,打印看看结果。
number = 371
b = number // 100
print(b)
4)判断水仙花
现在371三个数字都取出来了,接下来咱们判断一下这个数字是不是水仙花数。
这里咱们用 if 来做逻辑判断(一个 = 是赋值,两个 == 才是判断相整)
number = 371
g = number % 10
print(g)
s = int(number / 10 % 10)
print(s)
b = number // 100
print(b)
if number == g ** 3 + s ** 3 + b ** 3:
print(number,'是水仙花数')
打印结果
大家可以用其它数去试试,实践一下才记得住。
网友评论