Forum >> Principianti >> problemi con funzioni open e read

Pagina: 1

ciao ragazzi sono nuovissimo del forum ma ho questo problema in pratica nel mio c è scritto:




fr = open( "raus ", "w" )

tutto_fr = fr.read()

fw = open( "maus", "w" )

fw.write( tutto_fr )




ma il testo del file raus.txt non me lo copia nel file maus.txt, cosa è successo?






ciao ragazzi sono nuovissimo del forum ma ho questo problema in pratica nel mio c è scritto:
Ciao caro e benvenuto. Nel tuo cosa? ;)

fr = open( "raus ", "w" )
tutto_fr = fr.read()

fw = open( "maus", "w" )
fw.write( tutto_fr )

ma il testo del file raus.txt non me lo copia nel file maus.txt, cosa è successo?
Leggiti questa risposta di Marco Buttu, credo che ci sia tutto quello ti interessa.

Cya
Daniele aka Palmux said @ 2016-12-29 17:25:41:
ciao ragazzi sono nuovissimo del forum ma ho questo problema in pratica nel mio c è scritto:
Ciao caro e benvenuto. Nel tuo cosa? ;)

fr = open( "raus ", "w" )
tutto_fr = fr.read()

fw = open( "maus", "w" )
fw.write( tutto_fr )

ma il testo del file raus.txt non me lo copia nel file maus.txt, cosa è successo?
Leggiti questa risposta di Marco Buttu, credo che ci sia tutto quello ti interessa.

Cya

Daniele aka Palmux said @ 2016-12-29 17:25:41:
il problema non lo ho risolto seguendo anche la lezione di Marco Buttu, il programma modificato è questo:
Daniele aka Palmux said @ 2016-12-29 17:25:41:
Daniele aka Palmux said @ 2016-12-29 17:25:41:
fr = open( "raus ", "r" )
Daniele aka Palmux said @ 2016-12-29 17:25:41:
tutto_fr = fr.read()
Daniele aka Palmux said @ 2016-12-29 17:25:41:
fw = with open( "maus", "w" ) as fw:
Daniele aka Palmux said @ 2016-12-29 17:25:41:
fw.write( tutto_fr )
ma niente il testo di raus non me lo copia su maus, eppure qualche settimana fa riusciva con l'algoritmo che ho scritto nella prima domanda, aiutatemi perche non sto capendo cosa sia successo
Quello che hai scritto non è quello che ha suggerito Marco Buttu, stai attento agli esempi e seguili con attenzione (sempre che abbia capito bene quello che hai scritto visto che hai quotato un po' maluccio).

La corretta sintassi riportata da Marco è la seguente:
>>> with open('mynewfile', 'w') as f:
...     f.write('pippo')
Di certo funziona, usa questo semplicissimo esempio ed adattalo alle tue esigenze.

NOTA: Quando scrivi del codice per essere riportato su questo forum, usa il tasto per la formattazione corretta.

Cya
Daniele aka Palmux said @ 2017-01-02 10:41:16:
Quello che hai scritto non è quello che ha suggerito Marco Buttu, stai attento agli esempi e seguili con attenzione (sempre che abbia capito bene quello che hai scritto visto che hai quotato un po' maluccio).

La corretta sintassi riportata da Marco è la seguente:
>>> with open('mynewfile', 'w') as f:
...     f.write('pippo')
Di certo funziona, usa questo semplicissimo esempio ed adattalo alle tue esigenze.

NOTA: Quando scrivi del codice per essere riportato su questo forum, usa il tasto per la formattazione corretta.

Cya
Daniele aka Palmux said @ 2017-01-02 10:41:16:
ma la sintassi di Marco Buttu cioè:
Daniele aka Palmux said @ 2017-01-02 10:41:16:
>>> with open('mynewfile', 'w') as f:
...     f.write('pippo')
la devo integrare con altre sintassi? perche se faccio girare solo quel codice il programma crea un altro programma chiamato mynewfile in cui c è scritto pippo
Daniele aka Palmux said @ 2017-01-02 10:41:16:
ma io devo solo copiare il testo da un file ad un altro
Daniele aka Palmux said @ 2017-01-02 10:41:16:
Daniele aka Palmux said @ 2017-01-02 10:41:16:
Quello che hai scritto non è quello che ha suggerito Marco Buttu, stai attento agli esempi e seguili con attenzione (sempre che abbia capito bene quello che hai scritto visto che hai quotato un po' maluccio).

La corretta sintassi riportata da Marco è la seguente:
>>> with open('mynewfile', 'w') as f:
...     f.write('pippo')
Di certo funziona, usa questo semplicissimo esempio ed adattalo alle tue esigenze.

NOTA: Quando scrivi del codice per essere riportato su questo forum, usa il tasto per la formattazione corretta.

Cya
Daniele aka Palmux said @ 2017-01-02 10:41:16:
Daniele Aka Palmix ho risolto il problema non con il codice di Marco Buttu:
Daniele aka Palmux said @ 2017-01-02 10:41:16:
f = open("curri.txt","r")
tutto = f.read()
t = open ("culum.txt","w")
t.write(tutto)

tutto.close()
f.close()
t.close()
ma questo comunque funziona tutto, anche se volessi copiare solo una parte del testo come per esempio nelle pagine web come potrei fare??


f = open("curri.txt","r")
tutto = f.read()
t = open ("culum.txt","w")
t.write(tutto)

tutto.close()
f.close()
t.close()
Beh, hai scritto esattamente la stessa cosa che ha suggerito Marco Buttu. Ovviamente nell'esempio fatto, 'mynewfile' andava sostituito dal nome del tuo file e 'pippo' col contenuto che avresti voluto metterci dentro il file.

Usando with non devi esplicitare la chiusura del/dei file. Quello che hai scritto tu è del tutto similare a:
with open("curri.txt","r") as f:
    tutto = f.read()

with open("culum.txt","w") as t:
    t.write(tutto)
A presto e buono studio.
Daniele
Daniele aka Palmux said @ 2017-01-03 21:07:09:
f = open("curri.txt","r")
tutto = f.read()
t = open ("culum.txt","w")
t.write(tutto)

tutto.close()
f.close()
t.close()
Beh, hai scritto esattamente la stessa cosa che ha suggerito Marco Buttu. Ovviamente nell'esempio fatto, 'mynewfile' andava sostituito dal nome del tuo file e 'pippo' col contenuto che avresti voluto metterci dentro il file.

Usando with non devi esplicitare la chiusura del/dei file. Quello che hai scritto tu è del tutto similare a:
with open("curri.txt","r") as f:
    tutto = f.read()

with open("culum.txt","w") as t:
    t.write(tutto)
A presto e buono studio.
Daniele
grazie Daniele dell'aiuto ma se utilizzo lo stesso programma ma con la funzione urlllib2 non mi copia il testo(contenuto) del sito web ma la sua struttura perche??
import urllib2
f = urllib2.urlopen("http://python.org/")
tutto = f.read()
t = open ("culum.txt","w")
t.write(tutto)
f.close()
tutto.close()
t.close()



Ciao caro, prima di tutto prova a quotare un po' meglio, non scrivere la tua risposta nella stessa posizione in cui quoti (quello con la striscia grigia sulla sinistra per capirci). Dovresti scrivere sotto la parte con la striscia grigia che stai citando, altrimenti viene fuori un casino e non si capisce più nulla.

Seguendo al tua sintassi prova con:
import urllib2
with open("culumn.txt","w") as f:
    f.write(urllib2.urlopen("http://python.org/").read())
Fa quello che chiedi, anche se questo approccio è troppo minimalista e non considera troppi, tanti aspetti che andrebbero considerati. Ad esempio il tipo di dati che ricevi, oppure il fatto che potresti avere una risposta negativa dalla risorsa web e/o magari che non ti aspetti.

Ma credo che ci arriverai piano piano.
Cya
Daniele aka Palmux said @ 2017-01-04 17:49:20:
Ciao caro, prima di tutto prova a quotare un po' meglio, non scrivere la tua risposta nella stessa posizione in cui quoti (quello con la striscia grigia sulla sinistra per capirci). Dovresti scrivere sotto la parte con la striscia grigia che stai citando, altrimenti viene fuori un casino e non si capisce più nulla.

Seguendo al tua sintassi prova con:
import urllib2
with open("culumn.txt","w") as f:
    f.write(urllib2.urlopen("http://python.org/").read())
Fa quello che chiedi, anche se questo approccio è troppo minimalista e non considera troppi, tanti aspetti che andrebbero considerati. Ad esempio il tipo di dati che ricevi, oppure il fatto che potresti avere una risposta negativa dalla risorsa web e/o magari che non ti aspetti.

Ma credo che ci arriverai piano piano.
Cya

Daniele aka Palmux said @ 2017-01-04 17:49:20:
ciao Daniele ho un po di problemi con la scrittura ahahaa :( comunque ho utilizzato il codice:
Daniele aka Palmux said @ 2017-01-04 17:49:20:
import urllib2
with open("culumn.txt","w") as f:
    f.write(urllib2.urlopen("http://python.org/").read())
ma nel documento culumn.txt come al solito mi esce la struttura del sito internet. In pratica io vorrei copiare i contenuti da alcune pagine web soprattutto wikipedia quindi HTML, quindi sto utilizzando un web crawler per velocizzare il tutto copiando anche i link delle pagine successive che devo visitare, ma non riesco a copiare i contenuti nel senso, se vado sulla vita di Leonardo da Vinci vorrei che il programma mi copiasse tutto quello che c è scritto nella pagina cioè vita,opere, ecc... con il web crawler il passo è veloce anche perche sto utilizzando librerie come bs4 e requests quindi velocizzo il lavoro e poi non ci potrà essere il problema delle pagine inesistenti anche perche farò solo richieste su wikipedia quindi non metterò eccezioni come try ecc..
Daniele aka Palmux said @ 2017-01-04 17:49:20:
comunque i miei due unici problemini sono questi e cioè copiare il contenuto delle pagine e non la struttura, e poi copiare solo alcune parti della pagina web per esempio riferendomi all'esempio di prima, copiare solo la vita e non le opere magri potrei farlo riconoscendo i font delle parole e quindi i titoli dei paragrafi. Comunque grazie dell'aiuto chi mi sta fornendo Daniele ma forse non mi stavo riuscendo a spiegare io, comunque se mi aiutassi in questi due piccoli problemini mi faresti un grande favore anche perchè non trovo nessuna guida


Pagina: 1



Esegui il login per scrivere una risposta.