Python pb ouvrir une image

Résolu/Fermé
luffy.luck
Messages postés
31
Date d'inscription
vendredi 21 mars 2008
Statut
Membre
Dernière intervention
18 décembre 2008
- 11 avril 2008 à 16:10
sebsauvage
Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
- 11 avril 2008 à 17:30
Bonjour,
je souhaiterais ouvrir une image et l'afficher dans un label, mais impossible d'y arriver mess d'erreur :AttributeError: class Image has no attribute 'open'

Mon code est :

from PIL import ImageTk , Image
from Tkinter import *
import tkFileDialog
#=====================Functions=============================
def Open_file():
"Function to open a file"
image = tkFileDialog.askopenfile(parent=window,mode='rb',title='Choose a file')
image = Image.open(image)
photo = ImageTk.PhotoImage(image)

label = Label(image=photo)
label.image = photo
label.pack()
#=======================Main program =========================
window=Tk()
window.title("Pictures_Viewer")
But=Button(window,text='Open',command=Open_file)
But.pack(side=LEFT)
window.mainloop()

Merci d'avance si vous avez une idée (je debute en python)

anthony

3 réponses

sebsauvage
Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 654
11 avril 2008 à 16:30
Evite la syntaxe from X import Y, parceque tu risques d'avoir des conflits de noms (ce qui conduit à des erreurs parfois difficiles à diagnostiquer).


Voici le programme qui fonctionne:
import Image, ImageTk
import Tkinter, tkFileDialog
#=====================Functions=============================
def Open_file():
    "Function to open a file"
    image = tkFileDialog.askopenfile(parent=window,mode='rb',title='Choose a file')
    image = Image.open(image)
    photo = ImageTk.PhotoImage(image)

    label = Tkinter.Label(image=photo)
    label.image = photo
    label.pack()
#=======================Main program =========================
window=Tkinter.Tk()
window.title("Pictures_Viewer")
But=Tkinter.Button(window,text='Open',command=Open_file)
But.pack(side=Tkinter.LEFT)
window.mainloop() 
1
luffy.luck
Messages postés
31
Date d'inscription
vendredi 21 mars 2008
Statut
Membre
Dernière intervention
18 décembre 2008
3
11 avril 2008 à 16:40
okais merci bien, je pensais bien ke c'etais un truc dans ce genre. Ta reponce m'a bien aidé et je pense que je vais suivre ton conseil pour les importations.
Encore merci
anthony
1
sebsauvage
Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 654
11 avril 2008 à 17:30
De rien :-)
0