Plutarco
Profilo di
Nome | Plutarco |
---|---|
Indirizzo email | n/a |
Messaggi | 10 |
-
- 2017-10-31 09:40:50
- Re: inserire 2 funzioni in una
- Forum >> Principianti
- Si ho risolto, grazie mille
-
- 2017-10-30 15:54:50
- inserire 2 funzioni in una
- Forum >> Principianti
- ciao ragazzi volevo sapere se era possibile accorpare queste 2 funzioni in un' unica funzione
import re def post(fposts,insieme): dizio=dizionario(fposts) lista_id=[] for k,v in dizio.items(): lista_id+=[k for w in insieme if ' '+w.lower()+' ' in v.lower()] return set(lista_id) def dizionario(fpost): with open(fpost,encoding='UTF-8') as file: file=file.read() filex=re.sub('[^\w><]',' ',file) filex=file.split() filex=' '.join(file) posts=file.split('<POST>') if posts0=='': del posts0 codice_id=re.findall('(?<=<POST>).*\d*',file, re.MULTILINE) codice_id=' '.join(codice_id) codice_id=codice_id.split() dizio=dict(zip(codice_id,posts)) return dizio
grazie in anticipo
-
- 2017-10-27 12:25:26
- Re: sintassi parole in numeri
- Forum >> Principianti
- mi spiego meglio,
io devo fare in modo che se scrivo un numero tipo 121, mi stampa a video un dizionario nel quale sono presenti le parole, già presenti nel file, che hanno come sintassi la stessa del numero, ovvero, lettera1+lettera2+lettera1
def decod(pfile, codice): for x in pfile: for i in codice: dizio={a:b for a,b in zip(i,x)}
io per il momento ho questo, ma mi sono bloccato perché:
1) quando inserisco il file da caricare non mi legge cosa c'è nel file ma mi conta 'file.txt' come una stringa
2) non so se il metodo che ho utilizzato per inserire il singolo numero con le lettere delle parole nel dizionario vada bene
3) non so come fare per stampare a video un dizionario che mi stampi le parole all'interno del dizionario con la stessa sintassi del numero inserito
-
- 2017-10-27 09:21:15
- sintassi parole in numeri
- Forum >> Principianti
- ciao ragazzi,
devo fare un programma dove ho una stringa di numeri da 0 a 9 e un file di testo (file.txt) contenente una seria di parole casuali.
quello che devo fare io è, inserire i input una serie di numeri e lui mi stampa a video le parole che hanno quella sintassi
esempio:>>> program03.decod('file.txt','121') {'afa', 'ada', 'gag', 'sos', 'ere', 'ivi', 'aia', 'ala', 'iti', 'odo', 'ara', 'ava', 'imi', 'oro', 'ama', 'non', 'idi', 'oso'} >>> program03.decod('file.txt','3533939339') {'ninnananna'}
la mia domanda è,
io ho già caricato il file e tutto quanto,
ma come faccio a cambiare la sintassi della parola in numeri?
-
- 2017-10-20 16:56:36
- Re: Numeri in lettere
- Forum >> Principianti
- Risolto, grazie mille
-
- 2017-10-20 16:49:42
- Re: Numeri in lettere
- Forum >> Principianti
- Ok ma sia nelle secondarie che nella principale il parametro all'interno deve essere lo stesso?
Tipo
principale(n)
Secondaria(n)
-
- 2017-10-20 12:05:14
- Re: Numeri in lettere
- Forum >> Principianti
- Ok non lo sapevo, la prossima lo farò
allora io quello che pensavo era innanzitutto casomai spezzettarlo in più funzioni, in modo tale da ridurre gli if, come per esempio dai numeri da 1 a 19, per le decine e per le centinaia, ma non so come fare per poi richiamarle nella funzione principale
-
- 2017-10-18 23:47:33
- Numeri in lettere
- Forum >> Principianti
- Ciao ragazzi
Volevo sapere se in questo codice era possibile eliminare qualche if in modo tale da ridurre l'intricatezza
def conv(n):
'Scrivete qui il codice della funzione'
if n == 0:
return ""
elif n <= 19:
return ("uno", "due", "tre", "quattro", "cinque", "sei", "sette", "otto", "nove", "dieci", "undici", "dodici", "tredici", "quattordici", "quindici", "sedici", "diciassette", "diciotto", "diciannove")n-1
elif n <= 99:
decine = ("venti", "trenta", "quaranta", "cinquanta", "sessanta","settanta", "ottanta", "novanta")
letter = decine[int(n/10)-2]
t = n%10
if t == 1 or t == 8:
letter = letter[:-1]
return letter + conv(n%10)
elif n <= 199:
return "cento" + conv(n%100)
elif n <= 999:
m = n%100
m = int(m/10)
letter = "cent"
if m != 8:
letter = letter + "o"
return conv( int(n/100)) + \
letter + \
conv(n%100)
elif n<= 1999 :
return "mille" + conv(n%1000)
elif n<= 999999:
return conv(int(n/1000)) + \
"mila" + \
conv(n%1000)
elif n <= 1999999:
return "unmilione" + conv(n%1000000)
elif n <= 999999999:
return conv(int(n/1000000))+ \
"milioni" + \
conv(n%1000000)
elif n <= 1999999999:
return "unmiliardo" + conv(n%1000000000)
else:
return conv(int(n/1000000000)) + \
"miliardi" + \
conv(n%1000000000)
-
- 2017-10-18 19:02:40
- Re: Funzione e divisori
- Forum >> Principianti
- Guarda ti ringrazio ma ho risolto
Ho utilizzato 2 funzioni,
Una che mi leggeva tutti i divisori e una che mi vedeva quali erano primi e li posizionava in una lista, e quelli che avevano tot divisori li inseriva in un'altra
-
- 2017-10-17 18:35:55
- Funzione e divisori
- Forum >> Principianti
- Ciao ragazzi,
Io sono nuovo anche nel mondo python e oggi all'università mi si è proposto questo problema, ho uno codice da scrivere che dice
"Si definiscono divisori propri di un numero tutti i suoi divisori tranne l'uno e scrivere una funzione modi(ls,k) che, presa una lista ls di interi ed un intero negativo k:
1) cancella dalla lista ls gli interi che non hanno esattamente k divisori
2) restituisce una seconda lista che contiene i soli numeri primi di ls.
Numero primo = 0 divisori propri
Aiutatemi per favore