Forum EduPython

Echanges autour d'EduPython.

Vous n'êtes pas identifié(e).

#1 2020-12-08 19:55:25

patroncin
Membre
Inscription : 2020-12-08
Messages : 2

PIL avec EduPython3.0

Bonjour,
J'utilise dans le cadre de mes cours de SNT et NSI l'outil EduPython. Je n'arrive pas à faire fonctionner les scripts faisant appel au module PIL avec la dernière version 3.0 (je vous joins le script et le message ImportError associé ci-dessous) contrairement à la version 2.7 ou j'obtiens bien le graphe souhaité (toutefois, la console affiche des messages d'obsolescence, voir ci-dessous ). J'espère que quelqu'un pourra me proposé une solution pour EduPython3.0...
D'avance merci pour l'attention que vous voudrez bien portez à ma demande.

--> Le script qui occasionne l'ImportError avec Edupython3.0
import networkx as nx
import matplotlib.pyplot as plt
#création du graphe
g1 = nx.Graph()
#création des sommets
g1.add_node('a')
g1.add_node('b')
g1.add_node('c')
#Création des arêtes
g1.add_edge('a','b')
g1.add_edge('a','c')
#affichage graphe
nx.draw(g1, with_labels=True, font_weight='bold',node_size=800, node_color='lightgrey')
plt.show()

--> Message ImportError avec EduPython3.0
Traceback (most recent call last):
  File "E:\NSI\Term_NSI_2020-2021\TNSI_11_Algorithmique_Graphes\python\graphe_networkx_test.py", line 3, in <module>
    import matplotlib.pyplot as plt
  File "C:\EduPython3.0\App\lib\site-packages\matplotlib\pyplot.py", line 2356, in <module>
    switch_backend(rcParams["backend"])
  File "C:\EduPython3.0\App\lib\site-packages\matplotlib\__init__.py", line 833, in __getitem__
    plt.switch_backend(rcsetup._auto_backend_sentinel)
  File "C:\EduPython3.0\App\lib\site-packages\matplotlib\pyplot.py", line 213, in switch_backend
    switch_backend("agg")
  File "C:\EduPython3.0\App\lib\site-packages\matplotlib\pyplot.py", line 221, in switch_backend
    backend_mod = importlib.import_module(backend_name)
  File "C:\EduPython3.0\App\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "C:\EduPython3.0\App\lib\site-packages\matplotlib\backends\backend_agg.py", line 45, in <module>
    from PIL import Image
  File "C:\Users\Utilisateur\AppData\Roaming\Python\Python37\site-packages\PIL\Image.py", line 69, in <module>
    from . import _imaging as core
ImportError: cannot import name '_imaging' from 'PIL' (C:\Users\Utilisateur\AppData\Roaming\Python\Python37\site-packages\PIL\__init__.py)

--> La suite de message d'obsolescence du même script avec EduPython2.7

Hors ligne

#2 2020-12-08 20:22:33

magicvinni
Administrateur
Inscription : 2017-12-22
Messages : 308

Re : PIL avec EduPython3.0

Bonsoir, je pense que c'est le même problème qui a été soulevé (et partiellement réglé) ici : https://edupython.tuxfamily.org/forum/v … php?id=204

Vincent

Hors ligne

#3 2020-12-09 15:26:07

patroncin
Membre
Inscription : 2020-12-08
Messages : 2

Re : PIL avec EduPython3.0

Bonjour "magicvinni",
Merci pour votre réponse ultra rapide. Probablement qu'il y a un soucis de cohabitation: sur mon "vieux coucou" de 2006 en win7 pro, il y en a eu des installations de EduPython depuis 2013 , début de l'ISN...
Difficile de faire du vieux avec du neuf.
Bonne continuation.

Hors ligne

Pied de page des forums