重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
因为pi是python,math函数库中的一个内建函数。
创新互联公司-成都网站建设公司,专注成都网站建设、网站制作、网站营销推广,域名注册,网页空间,绵阳服务器托管有关企业网站制作方案、改版、费用等问题,请联系创新互联公司。
import math
print "math.modf(100.12) : ", math.modf(100.12)
print "math.modf(100.72) : ", math.modf(100.72)
print "math.modf(119L) : ", math.modf(119L)
print "math.modf(math.pi) : ", math.modf(math.pi)
扩展资料:
cmath是python中的标准库函数,用于做复杂的复数运算,
Python cmath 模块包含了一些用于复数运算的函数。
cmath 模块的函数跟 math 模块函数基本一致,区别是 cmath 模块运算的是复数,math模块运算的是数学运算。
polar 函数对一个输入的笛卡尔形势的复数进行计算,输出为一个二元组,第一个值为Z的模值, 第二个为幅度值。 rect() 函数对输入的模和幅度值进行计算输出笛卡尔表示。如果需要单独对一个复数进行幅度值的求解,可以调用 cmath.phrase(x) 函数,返回幅度值。
参考资料来源:百度百科-pyhton cmath
你的语法有错误。
内置函数power(x, y[, z])中的x和y是必选参数,z是可选参数;如果使用了参数z,中括号必须去掉,即power(x,y,z),其结果是x的y次方再对z求余数,但是这种方式比power(x,y) % z的执行效率要高。
你可以使用power(2, 4)或者power(2,4,3)。
power(2,4)=2的4次方=16;
power(2,4,3)=2的4次方再模上3=16 % 3=1。
######python求标准的一元二次方程的解###############
a,b,c= map(float,input("请输入aX^2+bX+c=0,函数中的三个参数:(空格隔开)").split())
###使用公式b^2-4ac判定是否有解b^2-4ac####
i=b*b-4*a*c
if i0:
print("该方程无实数解!")
elif i==0:
print("该方程解为:%.2f"%((-1)*b/(2*a)))#有一个解
else:
print("该方程解为:%.2f或%.2f"%((((-1)*b+i**0.5)/(2*a)),(((-1)*b-i**0.5)/(2*a))))
该方法运用是运用公式求解,保留两位小数,只能求实数解,供参考,有问题可追问
题目:找出两个字符串的最长公共字串,例如字符串“abccade”与字符串“dgcadde”的最长公共子串为“cad”。
分析:动态规划法。通过把中间的比较结果记录下来,从而可以避免字符的重复比较。:
首先定义二元函数(i,j):表示分别以s1[i],s2[j]结尾的公共子串的长度,显然,f(0, j) = 0 (j = 0),f(i, 0) = 0(i = 0),那么对于f(i +1, j + 1)而言,则有如下两种取值:
(1) f(i + 1, j +1) = 0,当str1[i + 1] != str2[j + 1]时
(2)f(i + 1, j +1) = f(i, j) + 1,当str1[i + 1] == str2[j + 1]时
根据这个公式可以计算出f(i, j)(0= i=len(s1), 0 = j = len(s2),所有的值,从而可以找出最长的子串。
def getMaxSubStr(str1, str2):
len1 = len(str1)
len2 = len(str2)
sb = ''
maxs = 0 # 用来记录最长公共子串的长度
maxI = 0 # 用来记录最长公共字串最后一个字符的位置
# 申请新的空间来记录公共字串长度信息
M = [([None] * (len1 + 1)) for i in range(len2 + 1)]
i = 0
while i len1 + 1:
M[i][0] = 0
i += 1
j = 0
while j len2 + 1:
M[0][j] = 0
j += 1
# 通过利用递归公式填写新建得二维数组(公共字串得长度信息)
i = 1
while i len1 + 1:
j = 1
while j len2 + 1:
if list(str1)[i - 1] == list(str2)[j - 1]:
M[i][j] = M[i - 1][j - 1] + 1
if M[i][j] maxs:
maxs = M[i][j]
maxI = i
else:
M[i][j] = 0
j += 1
i += 1
i = maxI - maxs
while i maxI:
sb = sb + list(str1)[i]
i += 1
return sb
if __name__ == "__main__":
str1 = 'abccade'
str2 = 'dgcadde'
print(getMaxSubStr(str1, str2))
程序运行结果:
cad
import numpy as np
def solve_quad(a,b,c):
if a == 0:
print('您输入的不是二次方程!')
else:
delta = b*b-4*a*c
x = -b/(2*a)
if delta == 0:
print('方程有惟一解,X=%f'%(x))
return x
elif delta 0:
x1 = x-np.sqrt(delta)/(2*a)
x2 = x+np.sqrt(delta)/(2*a)
print('方程有两个实根:X1=%f,X2=%f'%(x1,x2))
return x1,x2
else:
x1 = (-b+complex(0,1)*np.sqrt((-1)*delta))/(2*a)
x2 = (-b-complex(0,1)*np.sqrt((-1)*delta))/(2*a)
print(x1,x2)
return x1,x2
Python
是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。
因为二元运算符是作用在两个元素上的,可以更好的层层递进。
比如+,-,*,\都是二元运算符。
实现了减法的实际语义,可以找到binary_op1()函数。它提供了一种管理二元操作的通用方法。