Remplacement de la fonction linspace de NumPy (source):
def linspace(a, b, n=1): if n < 2: return b diff = (float(b) - a)/(n - 1) return [diff * i + a for i in range(n)]
Première intersection de deux droites, dont les abscisses sont identiques:
def find_first_intersection(x, y1, y2): for i in range(len(y1)-1): if (y1[i] < y2[i] and y1[i+1] > y2[i+1]) or (y1[i] > y2[i] and y1[i+1] < y2[i+1]): return x[i+1] + (y2[i+1] - y1[i+1]) * (x[i+1] - x[i]) / (y1[i+1] - y1[i] - y2[i+1] + y2[i]) return None
y = ( (yB - yA) / (xB- xA) ) * (x - xA) + yA
Pour une formule du type $y=ax+b$: $a=\frac{y_1-y_2}{x_1-x_2}$ et $b = y_1 - ax_1$
l = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] res = [sum(i) for i in zip(*l)]