Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: [VYRIEŠENÉ] Python - neznáme úkazy (ráta zle)  (Přečteno 1344 krát)

YaD

  • Návštěvník
  • Příspěvků: 69
[VYRIEŠENÉ] Python - neznáme úkazy (ráta zle)
« kdy: 21 Června 2011, 15:55:54 »
Zdravíčko,
mám program, ktorý mi ráta jednotlivé členy binomickej vety a potom ich pošle na výstup (vývojová verzia :)) a mám problém - jednoduchý(?), Python (3) mi v prípade posledného člena vyráta nejakú somarinu, pričom ak zadám člena explicitne (tretí parameter funkcie run), tak ho vyráta dobre. Ak zostávajú totiž implicitné hodnoty, tak vyráta všetky členy a vypíše na výstup.

Kód: http://paste.jabbim.cz/5239
Posledný riadok je spustenie. Člen odporúčam dosadiť 3 pri súčasnom výraze a porovnať s výsledkom bez člena. Problém mi je neznámy...
« Poslední změna: 19 Července 2011, 18:55:17 od YaD »

starenka

  • Stálý člen
  • **
  • Příspěvků: 1276
  • Karma: plynová [zapalovač] [hasičák]
    • /home/starenka
Re: Python - neznáme úkazy (ráta zle)
« Odpověď #1 kdy: 26 Června 2011, 11:46:54 »
lustit se mi to nechce, tak jen klasicky rady:
- pokud to jede v 2.x a ve 3.x to hazi jinej vysledek, slej bych changelogy ohledne operatoru etc
- na debug staci pouzit pdb nebo ipython a muzes si to osahavat za behu
mojenka | blozinek v2 | starej blozinek | krotim hady za penize | UJ! Kalužátor

Debian testing vrní v Thinkpadu X200/bedně/EEE 900a, MasoX Tiger v lampe

YaD

  • Návštěvník
  • Příspěvků: 69
Re: Python - neznáme úkazy (ráta zle)
« Odpověď #2 kdy: 29 Června 2011, 10:05:18 »
Debugovať som to debugoval - používam v Eclipse PyDev, ale problém je ten, že jediný rozdiel vo výsledkoch spôsobí cyklus v run.

CompositeNumber je trieda, resp. dátový typ, navrhnutý na prechovávanie takýchto čísiel: 5*x^3*y^3, 2*x, x^4*y^1 alebo x.

YaD

  • Návštěvník
  • Příspěvků: 69
Re: Python - neznáme úkazy (ráta zle)
« Odpověď #3 kdy: 19 Července 2011, 18:54:55 »
Problém som vyriešil (nedostal som sa k tomu). Problém kotví v CompositeNumber.__mul__, kde sa tvorí objekt na výstup - obj, ktorý ak sa vytvorí bez parametrov, tak skopíruje tie v self, čo mi je trošku divné, ale riešenie bolo napísať paremetre explicitne.

 

Provoz zaštiťuje spolek OpenAlt.