赞
踩
目录
在Python中常用的数值运算符有8个,具体请见下表:
运算符 | 描述 | 示例 |
+ | >>>a+b 13 | |
- | 减法运算 | >>>a-b 3 |
* | 乘法运算 | >>>a*b 16 |
/ | 除法运算 | >>>a/b 4 |
// | 整除运算,产生两个数的整数商,即不大于商的最大整数 | >>>a//b 1 |
% | 取余运算,两个数之商的余数 | >>>a%b 2 |
-a | 取a的负值 | >>>-a -6 |
a**b | 幂方运算,计算a的b次方 | >>>a**b 8 |
例题:六年级一班共有25名学生,老师带了48张白纸,请问每个学生可以分到几张白纸,还剩几张?如果每个学生分2张,那么老师还缺几张 ?
解析:
- student = 25
- paper = 48
- print(f"每个学生可以分到{paper//student}张纸")
- print(f"老师还剩{paper%student}张纸")
- print("如果每个学生分两张,那么老师还缺{}张纸".format(student*2-paper))
'运行
上述代码运行结果为:
- 每个学生可以分到1张纸
- 老师还剩23张纸
- 如果每个学生分两张,那么老师还缺2张纸
在数学中,有大括号{},中括号[],小括号(),但是在数值运算中,没有大括号和中括号,只有小括号。如果一个表达式中需要用到多层括号,就可以用小括号套小括号的方法,如下:
- ((1+3)*5+7)/(9-7)%3
-
- //输出结果为:
- 1.5
在变量赋值运算中,常常也会用到表达式,其结果就是变量的值。如下:
- a = 5
- b = 2
- c = a + b
-
- c
- 7
'运行
在表达式进行赋值时,如果在表达式中出现变量本身,那么变量就以当前的值先进行运算,然后将运算结果再赋值给变量,如下:
- a = 5
- a = a + 2
-
- a
- 7
在上例中,a=a+2相当于a=5+2,我们常将
a = a+n
这种形式的表达式简写为:a += n
对于+,-,*,/,//,%,**等运算都可以这样来表达:
- a = 20
- a -= 5
-
- a
- 15
-
- a *= 2
-
- a
- 30
'运行
例题:将5800秒转化为时分秒的形式。
解析:
- S=5800
- print("{}时{}分{}秒".format((S//3600),(S%3600)//60,(S%3600)%60))
'运行
上述代码运行结果为:
1时36分40秒
在Python中,预装的函数称为内置函数,我们可以直接使用这些函数来进行特定的数值运算,与运算符不同的是函数中存在参数,就像print()函数和format()方法一样,括号内是需要处理的数值或者变量。
print(*object,sep='',end='\n')
abs()函数是计算绝对值的函数,同数学内的绝对值是同一个含义,如:
|20| = |-20| = 20
对于复数来说,abs()是求模函数,同数学内的求模相同,如:
在使用abs()函数时,把需求绝对值或者求模的变量或者表达式放入括号内就可以了,语法如下:
abs(n)
- 例如:
-
- a = 20
- abs(a)
- 20
-
- abs(-a)
- 20
-
- a = 3+4j
- abs(a)
- 5.0
divmod()函数是计算商与余数的函数,语法如下:
divmod(m,n)
该函数是计算m与n的整数商和余数,并且通过元组形式返回整数商和余数。
在divmod()返回的元组中,第一个是整数商,第二个是余数,通常我们会把这两个值赋给两个不同的变量,如:
a,b = divmod(m,n)
a就是m和n的整数商,相当于:a = m // n
b就是m和n的余数,相当于b = m % n
max()函数是计算任意多个数字里面的最大值,而min()函数是计算任意多个数字里面的最小值。
- S = [1,3,8,9,25,66,87,20,2099]
- print(max(S))
- print(min(S))
-
- 2099
- 1
'运行
pow()函数是计算幂次方运算的函数,语法如下:
pow(m,n)
相当于 m**n,即m的n次方
pow()函数可以有三个参数,如下:
pow(m,n,%t)
通常计算m的n次方的最后t位。如下:
- pow(3,10,100)
- 49
round()函数返回浮点数x的四舍五入值。语法如下:
round( x [, n] )
参数
x -- 数值表达式。
n -- 数值表达式,表示从小数点位数。
示例:
- print('round(80.123456789,2):',round(80.123456789,2))
- print('round(100.0000123456,2):',round(100.0000123456,6))
'运行
输出结果为:
- round(80.123456789,2): 80.12
- round(100.0000123456,2): 100.000012
1.某工厂一共有30个工人,现在需要生产500个产品,如果每个工人生产的一样多,问每个工人需要生产多少个,还剩下多少个产品没人上产 ?
解析:
- peoples = 30
- products = 500
- m,n = divmod(products,peoples)
- print(f"如果每个工人生产的一样多,每个工人需要生产{m}个,还剩{n}产品没有人生产.")
'运行
运行结果为:
如果每个工人生产的一样多,每个工人需要生产16个,还剩20产品没人生产.
2.银行存款年利率为3%,陽陽存入本金500元,请问7年后陽陽能取回本金和利息共计多少元 (保留小数点后两位)?
提示,本金和利息合计计算公式如下:
解析:
- rmb = 500
- years = 7
- interesr_rate = 3
- rmb_and_interesr_rate = round((rmb * (((100+interesr_rate)/100)**years)),2)
- print(f"7年后陽陽的本金和利息共计{rmb_and_interesr_rate}元")
'运行
运行结果为:
7年后陽陽的本金和利息共计614.94元
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。