Lista annidata in input

di il
3 risposte

Lista annidata in input

Ciao a tutti,
scusate la domanda che per voi potrebbe essere banale ma io sono ancora una principiante.

Ma come si fa a scrivere una funzione che accetti in input una lista annidata?
mi serve per far inserire una lista di coordinate [[x,y], [a,b], [c,d]]

grazie e buon anno a tutti

3 Risposte

  • Re: Lista annidata in input

    Non sai come fare l'input o come fare la lista?
  • Re: Lista annidata in input

    Prova 1:

    def enter_coor([[x,y],[a,b],[c,d]]):

    --->SyntaxError: invalid syntax

    Prova 2:

    def enter_coor(lista):
    lista = [[x,y],[a,b],[c,d]]

    se scrivo una lista e poi lancio enter_coor mi restituisce errore: NameError: name 'x' is not defined

    IO DEVO:

    Scrivere una funzione che accetta in input una lista annidata in cui
    – Ogni elemento è una lista di coordinate
    – Ogni coordinata è una lista di due valori numerici
  • Re: Lista annidata in input

    Ciao domandina!

    Il problema non ha a che fare con le liste di liste; piuttosto, definisci la tua funzione in modo scorretto. O meglio, in un modo scorretto in Python

    Quando definisci la funzione - e cioé quando la scrivi, non quando la usi - non puoi metterle come input una cosa tipo:
    [[x,y],[a,b],[c,d]]
    come fai nella Prova 1. E' un errore di sintassi, come Python ti fa notare.

    Quando definisci una funzione devi fare come nella Prova 2, cioè dando semplicemente il nome di (una) variabile.
    Per capire con esattezza cos'è andato storto nella Prova 2, avrei bisogno di sapere cosa scrivi nel corpo della funzione enter_coor!
Devi accedere o registrarti per scrivere nel forum
3 risposte