Jok*_*ini 1 python math operations vector
我需要在point3值上使用3个数学运算函数.我想知道是否有人能够以更清洁和浓缩的方式更好地编写这些功能.
谢谢.
ptA = [10.0, 20.0, 30]
ptB = [50, 50 ,50]
percent = .50
def addPoint3(ptA,ptB):
idA = ptA[0] + ptB[0]
idB = ptA[1] + ptB[1]
idC = ptA[2] + ptB[2]
return [idA,idB,idC]
def subtractPoint3(ptA,ptB):
idA = ptA[0] - ptB[0]
idB = ptA[1] - ptB[1]
idC = ptA[2] - ptB[2]
return [idA,idB,idC]
def percentagePoint3(ptA,percentage):
idA = ptA[0] * percentage
idB = ptA[1] * percentage
idC = ptA[2] * percentage
return [idA,idB,idC]
add = addPoint3(ptA,ptB)
sub = subtractPoint3(ptA,ptB)
per = percentagePoint3(ptA,percent)
print add,sub,per
Run Code Online (Sandbox Code Playgroud)
def addPoint3(ptA, ptB):
return [a+b for a, b in zip(ptA, ptB)]
Run Code Online (Sandbox Code Playgroud)
要么
def percentagePoint3(ptA, percentage):
return [pt * percentage for pt in ptA]
Run Code Online (Sandbox Code Playgroud)
您也可以考虑实现一个类,而不是列表,因此您可以将它们定义为实例方法(有关此示例,请参阅RicardoCárdenes的回答).
| 归档时间: |
|
| 查看次数: |
128 次 |
| 最近记录: |