SavantCode - 1 year ago 471

Python Question

I have this:

`import math`

class Point:

def move(self, x, y):

self.x = x

self.y = y

def reset(self):

self.move(0, 0)

def calculate_distance(self, other_point):

return math.sqrt(

(self.x - other_point.x)**2 +(self.y - other_point.y)**2)

# how to use it:

point1 = Point()

point2 = Point()

point1.reset()

point2.move(5,0)

print(point2.calculate_distance(point1))

assert (point2.calculate_distance(point1) == point1.calculate_distance(point2))

point1.move(3,4)

print(point1.calculate_distance(point2))

print(point1.calculate_distance(point1))

So I expect that it prints like this:

`5.0`

4.472135955

0.0

But In pycharm in the console it only prints this:

`Process finished with exit code 0`

Where you can see the output?

I also add a attachment for clearness.

Thank you

Answer Source

Try this:

```
import math
class Point:
def move(self, x, y):
self.x = x
self.y = y
def reset(self):
self.move(0, 0)
def calculate_distance(self, other_point):
return math.sqrt((self.x - other_point.x)**2 +(self.y - other_point.y)**2)
# how to use it:
point1 = Point()
point2 = Point()
point1.reset()
point2.move(5,0)
print(point2.calculate_distance(point1))
assert (point2.calculate_distance(point1) == point1.calculate_distance(point2))
point1.move(3,4)
print(point1.calculate_distance(point2))
print(point1.calculate_distance(point1))
```