[Python] Possible motivazione per errore file not found.
Gabriele Battaglia
iz4apu a libero.it
Mar 4 Ott 2022 12:21:19 CEST
Reply to the Luigi Russo's message, wrote on 04/10/2022 at 08:10:
> Il 03/10/2022 23:56, Gabriele Battaglia ha scritto:
>> Ciao.
>> Chiedo venia per l'incredibile bruttezza di questa gestione errore.
>> Qui il fatto è che, dando ad input il nome di un file che esiste,
>> viene comunque richiamato il blocco except.
>> Il semplice codice è questo:
>>
>> fn = input("The document has to be encoded in UTF-8\nfilename.ext to
>> prepare? > ")
>> try:
>> f=open(fn, "rt",encoding="utf-8")
>> rig = f.readlines()
>> f.close()
>> print(f"File: {fn} found, with {len(rig)} lines of text.")
>> except:
>> print(f"Sorry, file: {fn} not found.\nRelaunch the App and try
>> with another filename.")
>> sys.exit()
>>
> Gigi:
>
> Ciao Gabriel,
>
> il blocco except così come è scritto gestisce qualunque eccezione, per
> cui non è detto che il problema sia il file che non è stato trovato.
>
> Dovresti fare questo:
>
> try:
> f=open(fn, "rt",encoding="utf-8")
> rig = f.readlines()
> f.close()
> print(f"File: {fn} found, with {len(rig)} lines of text.")
> except FileNotFoundError:
> print(f"Sorry, file: {fn} not found.\nRelaunch the App and try with
> another filename.")
> sys.exit()
>
>
> Se il file non esiste ok, ma se però il problema è un altro ti viene
> mostrato il traceback e quindi puoi capire perché c'è questo ulteriore
> problema.
>
Hai ragione Gigi! Ciao intanto, grazie mille. Infatti seguendo il tuo
suggerimento e quello dell'altro ragazzo che mi ha scritto, ho risolto.
A presto.
Gabry.
Maggiori informazioni sulla lista
Python