python之数学函数篇
1、abs()函数--取绝对值
功能:abs()函数返回数字的绝对值
语法:abs(x)
参数说明:x为数值表达式
tupleAbs = [12.45,0,-19.69] for num in tupleAbs: print(abs(num))
结果:
12.45
0
19.69
2、divmod()函数--获取商和余数的元组
功能:divmod()函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a//b,a%b)
语法:divmod(a,b)
参数说明:a为被除数,b为除数
def getDivmod(A,N): while N >=0: sn = str(N) sa = str(A) result = ['divmod({0},{1}):'.format(sn,sa),str(divmod(N,A))] print(''.join(result)) N = N - 1 getDivmod(3,10)
结果:
divmod(10,3):(3, 1) divmod(9,3):(3, 0) divmod(8,3):(2, 2) divmod(7,3):(2, 1) divmod(6,3):(2, 0) divmod(5,3):(1, 2) divmod(4,3):(1, 1) divmod(3,3):(1, 0) divmod(2,3):(0, 2) divmod(1,3):(0, 1) divmod(0,3):(0, 0)
3、sum()函数--求和计算
功能:sum()函数对列表、元组或集合等序列进行求和计算
语法:sum(iterable,start)
参数说明:iterable为可迭代对象,如列表、集合、元组;start为序列值相加后再次相加的值,默认为0
evenNumbers = [] i = 0 while i<=100: if i%2 == 0: evenNumbers.append(i) i+=1 print(sum(evenNumbers))
结果:
2550
4、round()函数--四舍五入
功能:round()函数返回浮点数的四舍五入的值
语法:round(x,n)
参数说明:x为浮点数值,n为要保留的小数位数
print('0.1:',round(0.1)) print('2.5:',round(2.5)) print('5.8:',round(5.8))
结果:
0.1: 0
2.5: 2
5.8: 6
5、pow()函数--计算任意数y次方的值
功能:pow()函数返回x的y次方的值
语法:pow(x,y[,z])
参数说明:x为底数,y为指数
#计算100到1000之间,哪些数的每一个位数上的数的三次方相加刚好等于该数 import math def getPow(): i = 100 while i<1000: a = math.floor(i/100) b = i%10 c = (math.floor(i/10))%10 if (pow(a,3)+pow(b,3)+pow(c,3))==i: print(i) i+=1 getPow()
结果:
153 370 371 407
6、min()函数--取出给定参数的最小值
功能:min()函数用于获取指定序列中最小的数值
语法:min(a,b,c,d,e,f……)或min(seq)
参数说明:a,b……为数值,seq为序列对象,如列表、元组等
import random seq = [] i = 0 while i<10: seq.append(random.randint(1,100)) i += 1 getMin = min(seq) print('原值列表:',seq) print('最小值:',getMin)
结果:
原值列表: [44, 44, 61, 18, 21, 7, 67, 41, 55, 72]
最小值: 7
7、max()函数--取出给定参数的最大值
功能:max()函数用于获取指定数值或指定序列中的最大值
语法:max(a,b,c……)或max(seq)
参数说明:a,b,c……为数值,seq为列表或元组
#找出出现次数最多的英文标点符号 import string pythonStr = """difhsnf,wfnd,fniwfe,in.iefh?jif;iuef,jefn.iefhui,ifeji.jie?ji,ioef, jfief,fehf,jf.iefh.efh.wiehf?kef.iuef,n.ie,af.fe.e.w.q.r.r.y""" print(max(string.punctuation,key=pythonStr.count))
结果:
'英文句号'--太小了,以此显示