Kysy
  • Python funktio muuttaa parametrinsa arvoa funktion ulkopuolella, miksi?

    Teen korttipeliä ja minulla on funktio joka tarkastaa käykö parametrina annettu kortti toisena parametrina annettuun "pöytään" ja laittaa sen sinne mikäli se onnistuu ja palauttaa pöydän, jos kortti ei käy palauttaa None:n. Ongelmana on että funktio myös muuttaa pöydän (lista jonka sisällä listoja) arvoa funktion ulkopuolella, vaikka mitään muuttujaa ei ole globaalisti määrätty. Ideoita mistä voisi johtua?

    ohjelmointi Python

2 vastausta

  • Pythonissa lista toimii funktiokutsussa hieman eri tavalla kuin muut muuttujat. Siinä missä muilla muuttujilla on omat nimiavaruudet eri funktioissa / aliohjelmissa, listasta siirtyy viittaus alkuperäiseen listaan. Eli aliohjelmassa listaan tehdyt muutokset säilyvät myös aliohjelman ulkopuolella.
    Mutta tosiaan, ohjelmointiputka on parempi paikka kysellä neuvoja. Sinne siis.
    http://www.ohjelmointiputka.net/

  • Kysy Ohjelmointiputka.net sivustolla python kysymyksiä. siellä osataan niihin vastata.

Suosituimmat aiheet

Lisää aiheita

Uusimmat tapahtumat palvelussa

Aktiivisimmat käyttäjät

Näytä koko lista