Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 22/01/2014, à 15:24

doudoulolita

scripts python-pygame qui ne fonctionnent plus.

Bonjour,
J'avais réalisé des petits scripts d'essai avec python 2.6 et pygame 1.9.1 il y a 3 ans environ mais depuis que je suis passée sur Ubuntu 12.04, la plupart de ces scripts ne fonctionnent plus. La version de python installée est maintenant 2.7. Comment corriger rapidement mes scripts ? Devrais-je tout refaire pour python3, lorsque celui-ci sera par défaut sur les distributions ?

Les plus simples de mes scripts affichent bien un écran de couleur et j'ai installé un autre jeu (Ultimate Smash Friends, réalisé par Tshirtman) en python et pygame qui fonctionne.

Pour les scripts qui affichent des images, voici un exemple de résultat dans la console :

epn13@ordi01:~$ python '/home/epn13/01-laurence/programmation/pygame/02_programmes_miks/05_pygame_miks_souris.py' 
Traceback (most recent call last):
  File "/home/epn13/01-laurence/programmation/pygame/02_programmes_miks/05_pygame_miks_souris.py", line 20, in <module>
    arriereplan = pygame.image.load(nom_image_arriereplan).convert_alpha()
pygame.error: Couldn't open miksplanete.png

L'image est bien dans le dossier et bien déclarée au début du script. Voici le début du script, justement:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

# définit les images d'arrère plan et celle choisie pour la souris
nom_image_arriereplan = 'miksplanete.png'
nom_image_souris = 'miks_walk1.png'

# importe la bibliothèque Pygame et autres éléments utiles
import pygame
from pygame.locals import *
from sys import exit

pygame.init()

J'ai un jeu un petit peu plus élaboré nommé Miks-game dont le .deb ne fonctionne plus non plus, à cause d'une dépendance non satisfaite et là, c'est plus embêtant puisque je le propose au public sur un blog.

Hors ligne

#2 Le 22/01/2014, à 17:27

pingouinux

Re : scripts python-pygame qui ne fonctionnent plus.

Bonjour,
Pour être sûr du répertoire et des permissions, je ferais déjà ceci (juste avant la ligne qui plante) :

import os
.................
rep=os.getcwd()
print(rep)
os.system('ls -l '+rep)

Hors ligne

#3 Le 24/01/2014, à 13:52

moths-art

Re : scripts python-pygame qui ne fonctionnent plus.

Il est quasi sur que Ubuntu ne proposerais plus que python 3 si certaines libs populaires (genre reportlab, paramiko) n'étaient pas portés.
Pour te donner un aperçu de l'état d'avancement, regarde https://python3wos.appspot.com/
Même si il y a quelques redondances (Fabric n'est pas passé à python 3 car il dépend de paramiko), ça donne néanmoins une bonne idée du travail manquant.
Tant que le support de python 3 ne sera pas à 99%, il y a peu de chance que Ubuntu ne maitienne pas des libs sous python 2.

Pour ce qui est du support de python 3 dans pygame, je ne sais pas trop ou ils en sont.

Perso, j'ai déjà basculé tous mes scripts (en local, pas remote) sous python 3 avec l'entête qui va bien :

#!/usr/bin/env python3

J'ai du coup, peu de soucis à me faire à ce niveau pour les années à venir.

Pour le .deb, je ne suis pas vraiment habilité au packaging mais je pense qu'ils nous manque des sources pour créer un .deb...
Un peu difficile de t'aider pour le coup à part te dire qu'il faudra éditer ton fichier control :

Depends: python (<< 3.0), python (>= 2.6), python-support (>= 0.90.0)

Je te conseillerais à l'avenir de passer par un dépôt (PPA) si tu désires être plus sereine sur la maintenance de tes .deb
Il y a la possibilité sous launchpad d'uploader et créer ton .deb pour plusieurs versions d'Ubuntu.

Hors ligne