Ici, mon code est capable de me chercher le coefficient de x et y mais je ne reçois pas les termes d'interception! sortie: p> attendu: p> appréciera vraiment si quelqu'un pouvait suggérer les changements nécessaires pour que je puisse obtenir les interceptions correctes p> p>
3 Réponses :
Essayez avec ceci:
import re
eq = ["1x+1y+2", "-1x+12Y-6", "2-5y-3x", "7y-50+2X", "3.14x-1.5y+9", "11.0x-1.5y+9.8"]
x = re.compile("([+-]?\d+(\.\d+)?)[xX]")
y = re.compile("([+-]?\d+(\.\d+)?)[yY]")
z = re.compile("([+-]?\d+(\.\d+)?)([+\-]|$)")
for line in eq:
xx = 0
m = x.search(line)
if m:
xx = m.group(1)
yy = 0
m = y.search(line)
if m:
yy = m.group(1)
zz = 0
m = z.search(line)
if m:
zz = m.group(1)
print("X = "+ xx + ", Y = " + yy + ", intercept= " + zz)
Merci @golammermazid Sajib pour votre aide. J'ai aussi trouvé une nouvelle solution à ce problème!
Une nouvelle solution au même problème.
(1.0, 1.0, 2.0) (-1.0, 12.0, -6.0) (-3.0, -5.0, 2.0) (2.0, 7.0, -50.0) (3.14, -1.5, 9.0) (11.0, -1.5, 9.8)
Vous pouvez réellement trouver les coefficients avec une regex à l'aide d'affirmations de lunettes, qui ne avancent pas la position de numérisation du moteur Regex.
1 1 2 -1 12 -6 -3 -5 2 2 7 -50 3.14 -1.5 9 11.0 -1.5 9.8
Quelle est la sortie attendue?
@Chrisdoyle, je viens de mettre à jour le résultat attendu!