import matplotlib.pyplot as plt x, y = 0.0, 1.0 tarX = 10.0 buchang = 0.1 X, Y = [x], [y] def f(x:float, y:float): return y - 2 * x / y while x <= tarX: k1 = f(x, y) k2 = f(x + buchang, y + k1 * buchang) y = y + 0.5 * (k1 + k2) * buchang x = x + buchang X.append(x) Y.append(y) plt.plot(X, Y) plt.show()