sandrin81
Profilo di
Nome | sandrin81 |
---|---|
Indirizzo email | n/a |
Messaggi | 2 |
-
- 2018-12-17 10:07:51
- Re: Aprire-elaborare e salvare file
- Forum >> Principianti
- Grazie mille,
ho fatto un passo avanti, ora leggo i file nella directory, e ho dettato una variabile da usare per il come contatore per il ciclo for (che devo ancora scrivere)
Non sto capendo ancora dove sbaglio quando voglio scrivere il file in output..
import os #define the paths in_path = "/Users/alessandro/Documents/Phyton/in/" out_path = "/Users/alessandro/Documents/Phyton/out/" #define start X x = 0.64 #define start X with a prompt #x = float(input("inserisci X: ")) #define header header = ("UNITS = m") #Read and sort the file files = ( next( os.walk(in_path) )2 ) files.sort() #Number of files in folder nr_file = len(files) #print(" ".join(files)) #open file with open(in_path + files0) as file: for line in file: data = line.strip().split(" ") if (data0) == "UNITS": continue data1 = str(float(data1) + x) print(" ".join(data)) #### problmema nell'output scrove una sola riga. #with open(out_path + files0, "a") as file: # file.write(header + "\n") #file.write(" ".join(data)) #file.close()
-
- 2018-12-16 17:19:12
- Aprire-elaborare e salvare file
- Forum >> Principianti
- Ciao a tutti, sto cercando di scrivere un programma per fare una semplice operazione cioè aprire tutti i file di testo di una cartella, aggiungere incrementalmente un valore ad un campo (es: 0.64 al primo file poi + 0.64 al secondo per avere 1.28 e cosi via). Al momento sono riuscito a fare l'operazione su un unico file. Mi sono bloccato nella scrittura, col codice qui sotto scrivo una sola riga.
#define the paths in_path = "/Users/alessandro/Documents/Phyton/" out_path = "/Users/alessandro/Documents/Phyton/out/" #define start X x = 0.64 #define start X with a prompt #x = float(input("inserisci X: ")) #define header header = ("UNITS = m") #open file with open(in_path + "001file.txt") as file: for line in file: data = line.strip().split(" ") if (data0) == "UNITS": continue data1 = str(float(data1) + x) print(" ".join(data)) with open(out_path + "File1.txt", "a") as file: file.write(header + "\n") file.write(" ".join(data + "\n")) file.close()
UNITS = m 1 0.000000000 0.000000000 0.00000000 198 0.000000000 16.00000000 0.00000000
il risultato che vorrei per il primo file elaborato per ogni file della cartella (la colonna 1 e la 3 non sono fisse) - i successivi andranno ad incrementare 0.64 > 1.28 ecc ecc..UNITS = m 1 0.640000000 0.000000000 0.00000000 198 0.640000000 16.00000000 0.00000000
suggerimenti? lo so che è banale ma non ne sto venendo fuori..
grazie mille
--- Ultima modifica di sandrin81 in data 2018-12-16 17:26:57 ---