Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Problema metodo images.visd()

SimoneIlCompilatore (610 points)
3 4 7
in Programmare in Python by (610 points)
closed by
Buongiorno ragazzi,
mentre stavo provando qualche codice sulla manipolazione di immagini con la libreria images fornita dal professore (e dopo aver scaricato pypng), quando provo a mostrare a schermo un'immagine in Spyder utilizzando images.visd(immagine) ottengo un TypeError. Il metodo .load() funziona senza problemi.
Allego una parte di codice per chiarezza.

Traceback (most recent call last):

  File ~\anaconda3\Lib\site-packages\png.py:1298 in save
    with open(file, 'wb') as fd:

TypeError: expected str, bytes or os.PathLike object, not BytesIO

<images.Image at 0x1c389a55190>

Grazie in anticipo per le risposte.

273 views
closed

2 Answers

Best answer
andrea.sterbini (208020 points)
756 1270 2377
by (208k points)
selected by
devi usare la libreria png.py inclusa su twiki
AL1990 (28120 points)
3 6 142
by (28.1k points)
edited by

prova con with open('example.txt.', 'wb') as fd:

credo che il problema sia che non stai passando il nome del file come una stringa

EDIT: trovato il problema, https://twiki.di.uniroma1.it/pub/Programmazione1/AA23_24/DiarioDelleLezioni-CanaleAL/images.py.txt
visd è definita nel file sopra e funziona solo nella console ipython grafica, ad esempio quella di Spyder

SimoneIlCompilatore (610 points)
3 4 7
by (610 points)

Nel mio codice non utilizzo with open(...) as fb, quindi immagino sia un problema della libreria pypng oppure di images.

AL1990 (28120 points)
3 6 142
by (28.1k points)
Come richiami visd? esempio:

import images

im = images.load('example.png')

images.visd(im)
SimoneIlCompilatore (610 points)
3 4 7
by (610 points)

Utilizzo la stessa struttura che hai scritto, con l'aggiunta di qualche riga di codice per modificare l'immagine tra la variabile im e images.visd(im). Visto che c'ero ho provato a caricare e mostrare l'immagine senza manipolazioni, ma mi restituisce lo stesso errore.

AL1990 (28120 points)
3 6 142
by (28.1k points)
e stai provando dalla console IPython?
SimoneIlCompilatore (610 points)
3 4 7
by (610 points)
No, ho provato eseguendo il codice dal file commentando le manipolazioni.
AL1990 (28120 points)
3 6 142
by (28.1k points)
allora credo abbiamo trovato il problema:

https://twiki.di.uniroma1.it/pub/Programmazione1/AA23_24/DiarioDelleLezioni-CanaleAL/images.py.txt

visd è definita nel file sopra e funziona solo nella console ipython grafica, ad esempio quella di Spyder