Forum >> Principianti >> Ricerca tra file txt in un folder

Pagina: Indietro 1 2

puoi usare os.stat per avere l'informazione, e poi ordinare la tua lista in base a questa.
https://leanpub.com/capirewxpython : Capire wxPython, il mio libro
https://pythoninwindows.blogspot.com : Python in Windows, il mio blog e le mie guide
puoi usare os.stat per avere l'informazione, e poi ordinare la tua lista in base a questa.

Grazie mille risolto.




Adesso ho un problema il file txt che devo leggere ha la seguente struttura:







1) xxxx;yyyy;zzzz;....;ttttt

2) xxxx;yyyy;zzzz;....;ttttt

3) xxxx;yyyy;zzzz;....;ttttt

....

70)xxxx;yyyy;zzzz;....;ttttt

...

80)xxxx;yyyy;zzzz;....;ttttt




Io per prelevare le info ad esempio dalla riga 70 non ho problemi:




file = open(' prova.txt')





for line in file:

line = line.rstrip()

if not line.startswith('76'): continue

words=line.split(';')

print(words1)





Il problema e che se faccio :





file = open('fct_1.rep')




for line in file:

line = line.rstrip()

if not line.startswith('76'): continue

words=line.split(';')

print(words1)




if not line.startswith('77'):continue # non entra mai in questo if




words1=line.split(';')




print(words1 +';' + words11)








Io vorrei capire come costruire un vettore che contenga per esempio tutte le 'yyyy' da tutte le righe .

Mi potresti dare un suggerimento?

Grazie mille in anticipo.

Saluti









ancora non riesci a esprimerti in modo comprensibile, e davvero... fare uno sforzo di chiarezza espositiva ti aiuterebbe anche a migliorare la tua comprensione degli algoritmi che devi scrivere. Fidati, lo so che ti sembra solo una pendanteria da vecchio noioso, ma fidati che è così. Spiega meglio a te stesso che cosa vuoi fare, e vedrai che anche come farlo ti sarà più chiaro.
Quando posti del codice, usa il pulsante "<>" per formattarlo e renderlo più leggibile.





Detto questo, esiste l'operatore "in" (tipo, "if x in y: ...") ed esistono gli slice delimitati con gli indici (tipo, "my_list[10:15]" o "my_string[10:15]"). Inoltre, non ho capito bene in che modo tu pensi che funzioni "continue", ma probabilmente non è il modo giusto. "Continue" fa una cosa semplice: esce subito da quella iterazione del "for", e inizia subito l'iterazione successiva.





Su quale libro stai studiando Python, esattamente? E a che punto sei arrivato?

https://leanpub.com/capirewxpython : Capire wxPython, il mio libro
https://pythoninwindows.blogspot.com : Python in Windows, il mio blog e le mie guide
ancora non riesci a esprimerti in modo comprensibile, e davvero... fare uno sforzo di chiarezza espositiva ti aiuterebbe anche a migliorare la tua comprensione degli algoritmi che devi scrivere. Fidati, lo so che ti sembra solo una pendanteria da vecchio noioso, ma fidati che è così. Spiega meglio a te stesso che cosa vuoi fare, e vedrai che anche come farlo ti sarà più chiaro.
Quando posti del codice, usa il pulsante "<>" per formattarlo e renderlo più leggibile.





Detto questo, esiste l'operatore "in" (tipo, "if x in y: ...") ed esistono gli slice delimitati con gli indici (tipo, "my_list[10:15]" o "my_string[10:15]"). Inoltre, non ho capito bene in che modo tu pensi che funzioni "continue", ma probabilmente non è il modo giusto. "Continue" fa una cosa semplice: esce subito da quella iterazione del "for", e inizia subito l'iterazione successiva.





Su quale libro stai studiando Python, esattamente? E a che punto sei arrivato?


Ho un file txt così strutturato :





59) "informazioni non interessanti " # Ignora il contenuto di questa riga

60) "informazioni non interessanti " # Ignora il contenuto di questa riga

61) xxxxxx;Paperino;yyyy;tttttt;zzzzz; # Devi prendere la stringa "Paperino" e metterla in un vettore

62)xxxxxx;Pluto;yyyy;tttttt;zzzzz; # Devi prendere la stringa "Pluto" ed appenderla al vettore

63) "informazioni non interessanti " # Ignora il contenuto di questa riga

64) "informazioni non interessanti " # Ignora il contenuto di questa riga

65) xxxxxx;Pippo;yyyy;tttttt;zzzzz; # Devi prendere la stringa "Pippo" ed appenderla al vettore








1) Leggi il file




1) Preleva la stringa "Paperino" dalla riga 61 ed mettila dentro un vettore --> w= ['Paperino']




2) Preleva la stringa "Pluto" dalla riga 62 ed mettila dentro un vettore --> w =['Paperino','Pluto']




3) Preleva la stringa "Pippo" dalla riga 62 ed mettila dentro un vettore --> w =['Paperino','Pluto',Pippo]




Dimmi se non é chiaro qualcosa .

Grazie in anticipo






ancora non riesci a esprimerti in modo comprensibile, e davvero... fare uno sforzo di chiarezza espositiva ti aiuterebbe anche a migliorare la tua comprensione degli algoritmi che devi scrivere. Fidati, lo so che ti sembra solo una pendanteria da vecchio noioso, ma fidati che è così. Spiega meglio a te stesso che cosa vuoi fare, e vedrai che anche come farlo ti sarà più chiaro.
Quando posti del codice, usa il pulsante "<>" per formattarlo e renderlo più leggibile.





Detto questo, esiste l'operatore "in" (tipo, "if x in y: ...") ed esistono gli slice delimitati con gli indici (tipo, "my_list[10:15]" o "my_string[10:15]"). Inoltre, non ho capito bene in che modo tu pensi che funzioni "continue", ma probabilmente non è il modo giusto. "Continue" fa una cosa semplice: esce subito da quella iterazione del "for", e inizia subito l'iterazione successiva.





Su quale libro stai studiando Python, esattamente? E a che punto sei arrivato?


Ho un file txt così strutturato :





59) "informazioni non interessanti " # Ignora il contenuto di questa riga

60) "informazioni non interessanti " # Ignora il contenuto di questa riga

61) xxxxxx;Paperino;yyyy;tttttt;zzzzz; # Devi prendere la stringa "Paperino" e metterla in un vettore

62)xxxxxx;Pluto;yyyy;tttttt;zzzzz; # Devi prendere la stringa "Pluto" ed appenderla al vettore

63) "informazioni non interessanti " # Ignora il contenuto di questa riga

64) "informazioni non interessanti " # Ignora il contenuto di questa riga

65) xxxxxx;Pippo;yyyy;tttttt;zzzzz; # Devi prendere la stringa "Pippo" ed appenderla al vettore








1) Leggi il file




1) Preleva la stringa "Paperino" dalla riga 61 ed mettila dentro un vettore --> w= ['Paperino']




2) Preleva la stringa "Pluto" dalla riga 62 ed mettila dentro un vettore --> w =['Paperino','Pluto']




3) Preleva la stringa "Pippo" dalla riga 62 ed mettila dentro un vettore --> w =['Paperino','Pluto',Pippo]




Dimmi se non é chiaro qualcosa .

Grazie in anticipo






Non è chiaro il fatto che se veramente QUESTO è il problema che stai cercando di risolvere, allora "61", "62", "Paperino", "Pippo", "Pluto", sono tutti valori magici, come si dice in gergo. Se tu DAVVERO sai che quel file contiene le stringhe "Paperino", "Pippo", "Pluto", allora la soluzione al tuo esercizio è
def soluzione_pazzescamente_ingegnosa():
    return ['Paperino', 'Pippo', 'Pluto'] # perché LO SO GIA' che quelle stringhe sono lì!!!

Se invece il tuo problema è un altro, allora prova a spiegare con chiarezza il tuo problema.... e vedrai che anche la soluzione ti sarà già un pochino più chiara... Poi come ti ho detto esistono l'operatore "in" e gli indici... usa quelli.





Su quale libro stai studiando Python, esattamente? E dove sei arrivato?

https://leanpub.com/capirewxpython : Capire wxPython, il mio libro
https://pythoninwindows.blogspot.com : Python in Windows, il mio blog e le mie guide


Pagina: Indietro 1 2



Esegui il login per scrivere una risposta.