Forum
>>
Principianti
>>
eliminare una porzione di stringa
Pagina: Indietro 1 2
Esegui il login per scrivere una risposta.
Scritto da Cherry |
2018-03-19 21:36:55 - Re: eliminare una porzione di stringa
|
ciao! più o meno è come lo avevo immaginato all'inizio ma mi sono accorta di non saper trovare un modo per ricercare la singola parola e mi trovavo ad eliminare i singoli caratteri ricorrenti.
chiamando x e y le mie stringa1 e 2 divenute liste tramite list,avevo immaginato una cosa del genere ma ottengo in output una lista vuota e non sono molto sicura del fatto che il remove funzioni chiamando il nome della lista da cercare e non la parola o il carattere esplicito. if x.count(y)>=1: for i in range(len(x)): if (x == y ): x.remove(y) nuova = nuova + x return nuova |
|
Scritto da EL DIABLO |
2018-03-19 22:07:22 - Re: eliminare una porzione di stringa
|
E' meglio che studiate Python da un libro serio, invece di andare a scqquola
La funzione ricorsiva l'ho postata nella discussione di Coffee |
|
Scritto da Cherry |
2018-03-19 22:11:53 - Re: eliminare una porzione di stringa
|
|
|
Scritto da EL DIABLO |
2018-03-19 22:34:56 - Re: eliminare una porzione di stringa
|
Per esempio in questo sito, nella sezione Documentazione >> I libri, ne scegli uno.
Hai capito il funzionamento della funzione ricorsiva? Altrimenti il prof. ti sgama Oltretutto vi presenterete entrambi con lo stesso codice, e se nessuno dei due avrà capito il funzionamento.. vi sgamerಠal quadrato. Quale fantastico corso state frequentando? |
|
Scritto da stix77 |
2018-03-19 23:30:58 - Re: eliminare una porzione di stringa
|
cherry, python offre una fantastica funzione che è la "list comprehension" (qui i dettagli https://docs.python.org/3/tutorial/datastructures.html#list-comprehensions )
il tuo motore di "sottrazione" diventa una riga di codice a = ["a","b","e","f"] b = ["b","d","f"] c = [x for x in a if x not in b] print(c) in pratica nella terza riga si prendono in rassegna gli elementi della lista a e vengono sottratti quelli della lista b. se vuoi il codice completo commentato è questo qui sotto stringa_A = "mangio la mela e canto" stringa_B = "la mela" lista_A = stringa_A.split(" ") #funzione split, taglia la stringa quando incontra lo spazio scritto in parentesi e carica le parole in lista lista_B = stringa_B.split(" ") lista_C = [x for x in lista_A if x not in lista_B] #prende in rassegna tutti gli oggetti della prima lista e li carica nella nuova solo se non presenti nella seconda lista stringa_C = " ".join(lista_C) #funzione join, prende in rassegna tutti gli oggetti di una lista e crea una stringa lasciando come spazio quello scritto fra virgolette print(stringa_C) --- Ultima modifica di stix77 in data 2018-03-19 23:57:58 --- --- Ultima modifica di stix77 in data 2018-03-20 00:04:52 --- |
|
Scritto da Cherry |
2018-03-20 21:57:38 - Re: eliminare una porzione di stringa
|
Grazie a tutti! L'esercizio lo ha spiegato a lezione il prof alla fine ,anche se di metodi per risolverlo ce ne sono veramente tanti . L'intento a lezione ê stato quello di usufruire il meno possibile di funzioni già fatte e sfruttare le caratteristiche di liste e stringhe . tuttavia gli spunti che mi sono stati dati mi hanno permesso di affinare alcune nozioni che avevo e alla fine ieri sera avevo trovato altre due soluzioni alternative al problema 😂
|
Pagina: Indietro 1 2
Esegui il login per scrivere una risposta.