Profilo di robotmat

Nome robotmat
Indirizzo email n/a
Messaggi4
  • Re: Lista di 20 elementi
    Forum >> Principianti
    Su che libro studi?
    Apogeo la guida tascabile e sulle dispense che mi da il professore.



    Ma se dovessi spostare le posizioni degli elementi all'interno della lista2 come potrei fare?




    Esempio:




    lista2=[2,5,4,7] >>>>> [5,4,7,2]



  • Re: Lista di 20 elementi
    Forum >> Principianti
    È tutto giusto, bravo !


    def prova(lista1,lista2) :
        clone_1 = lista1[ : ] #creo una copia della lista1
        clone_2 = lista2[ : ] #creo una copia della lista2 
        for el in clone_1 :
            for i, x in enumerate(clone_2) :
                if el == 'e' + str(x) :
                    clone_2.remove(x)
                    lista3 = clone_2
        return lista3
    
    lista1=['e7','e4','e3','e16','e1','e5','e13','e17','e19','e6','e2','e10','e14','e12','e11','e8','e9','e18','e15','s20']
    lista2=[5,3,2,4,1,6,7,8,12,15,17,11,10,20,19,14,16,13,9,18]
    
    print(prova(lista1, lista2))
    


    Ah ok perfetto non so perchè non mi dava il risultato giusto alla fine della funzione.
    Grazie.




  • Lista di 20 elementi
    Forum >> Principianti
    Buonasera,



    Io ho difficolta con questo esercizio:




    Ho una lista1 di 20 elementi ed una lista2 con diversi numeri all'interno ad esempio:




    lista1=['e7','e4','e3','e16','e1','e5','e13','e17','e19','e6','e2','e10','e14','e12','e11','e8','e9','e18','e15','s20']




    lista2=[5,3,2,4,1,6,7,8,12,15,17,11,10,20,19,14,16,13,9,18]




    Dovrei tornare una lista3 che è la copia della lista2, ed inoltre devo eliminare tutti gli elementi della lista2, se nella lista1 appare con 'e'+str(i), quindi dalla lista2 dovrei eliminare tutti gli elementi tranne il numero 20



    Questo è il mio codice ma non riesco a capire dove sbaglio



    def prova(lista1,lista2):
    clone_1[:] #creo una copia della lista1
    clone_2 = lista2[:] #creo una copia della lista2 
    for el in clone_1:
    	for i,x in enumerate(clone_2):
    		if el == 'e'+str(x):
    				clone_2.remove(x)
    				lista3=clone_2
    return lista3














    --- Ultima modifica di robotmat in data 2019-10-28 10:57:36 ---


    --- Ultima modifica di robotmat in data 2019-10-28 11:12:41 ---
  • Esercitazione
    Forum >> Principianti
    Si definiscono divisori propri di un numero tutti i suoi divisori tranne l'uno e il numero stesso.

    Scrivere una funzione modi(ls,k) che, presa una lista ls di interi ed un intero

    non negativo k:

    1) cancella dalla lista ls gli interi che non hanno esattamente k divisori propri

    2) restituisce una seconda lista che contiene i soli numeri primi di ls.

    NOTA: un numero maggiore di 1 e' primo se ha 0 divisori propri.




    Qualcuno può aiutarmi con questo esercizio?




    non so proprio da dove iniziare so solo che per vedere se è primo un numero basta che faccio:

    num%2 =0 so che quel numero non è primo