Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Entrambe le parti precedenti la revisione Revisione precedente | |||
|
definire_una_funzione_in_python [2021/10/25 14:13] 65.21.180.48 versione precedente ripristinata (2021/05/20 07:21) |
definire_una_funzione_in_python [2021/10/29 21:19] (versione attuale) deleteme versione precedente ripristinata (2021/06/03 07:51) |
||
|---|---|---|---|
| Linea 2: | Linea 2: | ||
| Immaginiamo, | Immaginiamo, | ||
| - | <code python | + | <code python> |
| #creazione del testo dal corpus LDT | #creazione del testo dal corpus LDT | ||
| import xml.etree.ElementTree as ET | import xml.etree.ElementTree as ET | ||
| - | parole=ET.parse(' | + | parole=ET.parse(' |
| testo=[i.attrib[' | testo=[i.attrib[' | ||
| Linea 13: | Linea 13: | ||
| #stampa il 2° elemento (forma della parola) contenuto nel 5° elemento contenuto nella 'lista di liste' | #stampa il 2° elemento (forma della parola) contenuto nel 5° elemento contenuto nella 'lista di liste' | ||
| - | print freq_parole[5-1][2-1] | + | print(freq_parole[5-1][2-1]) # |
| </ | </ | ||
| Lo stesso procedimento si può riscrivere sotto forma di funzione con il comando //def//, in modo da poter essere poi applicato ad altri testi e con altri numeri di rango. Nel codice seguente, all' | Lo stesso procedimento si può riscrivere sotto forma di funzione con il comando //def//, in modo da poter essere poi applicato ad altri testi e con altri numeri di rango. Nel codice seguente, all' | ||
| - | <code python | + | <code python> |
| def trovaparola(t, | def trovaparola(t, | ||
| fp=[[t.count(i), | fp=[[t.count(i), | ||
| Linea 25: | Linea 25: | ||
| Una volta definita la funzione, per un qualsiasi testo in forma di lista basterà scrivere quanto segue per visualizzare la parola cercata: | Una volta definita la funzione, per un qualsiasi testo in forma di lista basterà scrivere quanto segue per visualizzare la parola cercata: | ||
| - | <code python | + | <code python> |
| - | print trovaparola(testo, | + | print(trovaparola(testo, |
| </ | </ | ||
| Se può essere scritta in una sola riga (come accade nel nostro caso a patto che si usi //sorted// e non //sort()// per ordinare la lista), la funzione può essere definita in alternativa attraverso il comando //lambda//. | Se può essere scritta in una sola riga (come accade nel nostro caso a patto che si usi //sorted// e non //sort()// per ordinare la lista), la funzione può essere definita in alternativa attraverso il comando //lambda//. | ||
| - | <code python | + | <code python> |
| trovaparolabis = lambda t, r: sorted([[t.count(i), | trovaparolabis = lambda t, r: sorted([[t.count(i), | ||
| + | </ | ||
| + | ---- | ||
| + | In un unico script: | ||
| + | <code python es_funzione.py> | ||
| + | def trovaparola(t, | ||
| + | fp=[[t.count(i), | ||
| + | fp=sorted(fp, | ||
| + | return fp[r-1][2-1] #il comando return definisce l' | ||
| + | |||
| + | trovaparolabis = lambda t, r: sorted([[t.count(i), | ||
| + | |||
| + | import xml.etree.ElementTree as ET | ||
| + | parole=ET.parse(' | ||
| + | testo=[i.attrib[' | ||
| + | |||
| + | print(trovaparola(testo, | ||
| + | print(trovaparolabis(testo, | ||
| + | |||
| </ | </ | ||