Pythonで3次元座標の点クラスを定義し、原点からの距離を計算する
以下に、3次元座標の点クラスを定義します。
import math
class Point:
def __init__(self, x, y, z):
self._x = x
self._y = y
self._z = z
def distance(self):
return math.sqrt(self._x ** 2 + self._y ** 2 + self._z ** 2)
上記のクラスでは、アトリビュートの保護のために _x, _y, _z のようにアンダースコアをプレフィックスとして付けています。これにより、外部から直接アクセスすることができなくなり、クラス内部のメソッドを通じてアトリビュートにアクセスする必要があります。
以下に、点クラスのオブジェクトを作成し、原点からの距離を表示するコード例を示します。
point1 = Point(5, 0, 0)
print('点(5, 0, 0)の原点からの距離:', point1.distance())
point2 = Point(0, 5, 0)
print('点(0, 5, 0)の原点からの距離:', point2.distance())
point3 = Point(0, 5, 5)
print('点(0, 5, 5)の原点からの距離:', point3.distance())
point4 = Point(5, 5, 5)
print('点(5, 5, 5)の原点からの距離:', point4.distance())
実行結果:
点(5, 0, 0)の原点からの距離: 5.0
点(0, 5, 0)の原点からの距離: 5.0
点(0, 5, 5)の原点からの距離: 8.660254037844387
点(5, 5, 5)の原点からの距離: 8.660254037844387
原文地址: https://www.cveoy.top/t/topic/kBuC 著作权归作者所有。请勿转载和采集!