Python在数学里面是十分友好的,有广泛的运用和拓展
阶乘问题计算
# 阶乘计算 n=int(input("输入你要计算的阶乘数字:")) def fun(n): if n==1 or n==0: return 1 else: return fun(n-1)*n print (fun(n))
阶乘求和
# 阶乘求和运算 n=int(input("请输入阶乘求和的末项:")) s = 1 t = [] for i in range(1,n+1): s *= i t.append(s) print(sum(t))
数列求和
# 数列求和 # 观察这个数列:2/1,3/2,5/3,8/5,13/8,21/13...... n=int(input("您需要求和多少项:")) sum = 0 a, b = 1, 2 for i in range(1, n+1): sum += b / a a, b = b, a + b print(sum)
排列组合
# 排列组合 # 1 2 3 4,这些数字可以随意的排列组合组成多少个不重复,不相等的数字 a=0 for i in range(1,5): for j in range(1,5): for k in range(1,5): if( i != k ) and (i != j) and (j != k): a+=1 print (i,j,k) print("有{}中排列组合的方式".format(a))
# 兔子问题,有一对兔子,从出生3个月起,每个月都生下一对小兔子,假设兔子不会死亡,那么每个月的兔子总数是多少? f1 = 1 f2 = 1 for i in range(1,22): print ('%12ld %12ld' % (f1,f2)), if (i % 3) == 0: print ('') f1 = f1 + f2 f2 = f1 + f2
字符串检验
# 输入一串字符串,自动判断英文字母,空格,数字和其他字符有多少 a = input('请输入一串字符:') 英文 = 0 空格= 0 数字= 0 其他= 0 for i in a: if i.isalpha(): 英文 += 1 elif i.isspace(): 空格 += 1 elif i.isnumeric(): 数字 += 1 else: 其他 += 1 print('英文 = %s,空格 = %s,数字 = %s,其他 = %s' % (英文,空格,数字,其