Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Problema con le liste di python

    Allora ecco il codice:
    codice:
    lista = ['pane', 'latte', 'uova', 'zucchero']
    a = raw_input ('scrivi: ')
    if a == lista:
        print "ok"
    else:
        print "no"
    Come sta messo ora, mi scrive sempre no.
    Dovrei però fare in modo che mi scriva "ok" quando a è uguale ad uno ed un solo valore della lista. Come posso farlo?
    Grazie in anticipo

  2. #2
    Usa il metodo index.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Quote Originariamente inviata da MItaly Visualizza il messaggio
    Usa il metodo index.
    Ti ringrazio, ma non ho capito come usarlo, potresti spiegarmelo te?

  4. #4
    Ok, ho capito, ma non credo tu abbia capito ciò che intendevo, ti ringrazio comunque per l'aiuto
    Comunque ci sono riuscito, e lascio il codice per chi ha il mio stesso problema e non sa come risolverlo:
    codice:
    lista = ['pane', 'latte', 'uova', 'zucchero']
    a = raw_input ('scrivi: ')
    def funzione():
        for lista_2 in lista:
            if a == lista_2:
                return True
    funzione()
    if funzione() == True:
        print "ok"
    else:
        print "no"

  5. #5
    Sorry, index era scomoda (tira un'eccezione se non lo trova), va bene count; usandola, il codice diventa semplicemente:
    codice:
    lista = ['pane', 'latte', 'uova', 'zucchero']
    a = raw_input ('scrivi: ')
    if lista.count(a) != 0:
        print "ok"
    else:
        print "no"
    (o, in maniera supercompatta:
    codice:
    print 'ok' if ['pane', 'latte', 'uova', 'zucchero'].count(raw_input('scrivi: ')) else 'no'
    )
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Quote Originariamente inviata da MItaly Visualizza il messaggio
    Sorry, index era scomoda (tira un'eccezione se non lo trova), va bene count; usandola, il codice diventa semplicemente:
    codice:
    lista = ['pane', 'latte', 'uova', 'zucchero']
    a = raw_input ('scrivi: ')
    if lista.count(a) != 0:
        print "ok"
    else:
        print "no"
    (o, in maniera supercompatta:
    codice:
    print 'ok' if ['pane', 'latte', 'uova', 'zucchero'].count(raw_input('scrivi: ')) else 'no'
    )
    grazie mille

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.