Forum
  
    >> 
    
      Principianti
    
  
  >>
  
    formattazione valori
  
  
  
  
  
  
  
   
  
    
    
    
      
      
  
Pagina: 1
  
Esegui il login per scrivere una risposta.
      
  
      
    Pagina: 1
| Scritto da hello  | 2019-11-14 09:41:42 - formattazione valori | 
| Salve ragazzi nel codice 
 ho questo risultato : in colonna "A" la stringa 20191101,6041.124,15.499 desiderei ottenere in colonna "A" la data in formato 01/11/2019 in colonna "B" 6041.124 o meglio 6041 in colonna "C" 15.499 o meglio 15,499 come modificare il codice ? grazie . 
gg=input('INSERISCI GIORNO INIZIALE DA ESAMINARE ')
mm=input('mese ')
aa=input('anno (2 cifre) ')
start2=str(gg)+'/'+str(mm)+'/'+str(aa)
start1=str(start2)
print (start1)
start=datetime.datetime.strptime(start1, "%d/%m/%y")
finish=datetime.datetime.today()
delta=start
while delta<finish-datetime.timedelta(days=1):
 stringa=datetime.datetime.strftime(delta,"20%y%m%d")  
 with open("./dati_centraline_"+stringa+"_meteo.csv") as filecsv:
    lettore = csv.reader(filecsv,delimiter=",")
    header = next(lettore)
    dati = [(linea0,linea2,linea5)
    for linea in lettore if linea0=="ARPACAMPANIA NA01" and (linea2=="RadSG" or linea2=="Temperatura aria")]
    somma=0
    somma2=0
    n=0
    for val in dati:
     vv=float(val2.replace(",","."))
     if val1=="RadSG" and vv>0:
      somma=somma+vv
     if val1=="Temperatura aria":
      somma2=somma2+vv
      n=n+1
    JOULE=somma*3.6
    Media=somma2/n
    file=open("./Temperatura+RaSG.csv","a") 
    giorno=datetime.datetime.strptime(stringa, "20%y%m%d")
    file.writelines('%s,%s,%s\n'%(stringa,JOULE,Media))
    file.close()
 delta =delta+datetime.timedelta(days=1)
 print (stringa) | |
| Scritto da Daniele aka Palmux  | 2020-01-05 01:36:33 - Re: formattazione valori | 
| 
 1. Per dividere i dati puoi usare str.split(",") ed ottenere una lista con i valori splittati;
 2. Per la data guarda la libreria datetime, fa quello che chiedi; 3. Beh ma tratta i numeri come interi usando int() oppure esplicita l'output senza decimali; 4. Mah, ti direi di non farlo visto che il separatore è il . non la , ma se proprio vuoi fare una cosa brutta del genere, trasformalo in stringa e fai un str.replace(). Ora sai tutto quello che ti serve. Cya | |
| Scritto da RicPol  | 2020-01-05 12:12:03 - Re: formattazione valori | 
| > trasformalo in stringa e fai un str.replace(). 
 vabbè dai... >>> import locale >>> locale.setlocale(locale.LC_ALL, '') >>> locale.str(15.499) '15,4999' https://pythoninwindows.blogspot.com/p/i-miei-libri.html : i miei libri
 https://pythoninwindows.blogspot.com : il mio blog | |
| Scritto da Daniele aka Palmux  | 2020-01-05 16:05:50 - Re: formattazione valori | 
| 
 Hai ragione, stupido io.
 Cya | |
| Scritto da RicPol  | 2020-01-05 18:31:18 - Re: formattazione valori | 
| no beh, str.replace() è probabilmente quello che avrei fatto *io*... ma bisogna cercare di darsi un tono :-)
 https://pythoninwindows.blogspot.com/p/i-miei-libri.html : i miei libri
 https://pythoninwindows.blogspot.com : il mio blog | |
| Scritto da Daniele aka Palmux  | 2020-01-05 18:49:47 - Re: formattazione valori | 
| 
 Darsi un tono, bella...     | 
Pagina: 1
Esegui il login per scrivere una risposta.
 
   
