IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Python et vitesse d exploitation de variable


Sujet :

Python

Vue hybride

rezuz Python et vitesse d... 29/05/2010, 15h41
Antoine_935 Si vous avez besoin de... 29/05/2010, 16h45
rezuz Un générateur pourrais être... 29/05/2010, 17h52
Antoine_935 Les générateurs sont des... 29/05/2010, 18h01
dividee Si c'est vectorisable, il... 29/05/2010, 18h10
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 70
    Par défaut Python et vitesse d exploitation de variable
    Bonjour. Sa fait un bou de temps que je ne suis pas venue sur ce forum. Mais aujourd'hui j'ai de nouveau besoin de votre aide.

    Je voudrais savoir, quel est le meilleur moyen pour aller récupérer une information ? Quand je parle du meilleur, je veut dire le plus rapide.
    - faut-il utilise une liste, un tuple, ou une chaîne de caractère ? En sachant que le nombre d'éléments qui vont les composer est variable. Il peut varier entre 1000 et 10000.

    Et le combiner a une boucle avec for ou while ?


    En fait, je suis entrain de réalise un petit jeux en 3 D Grace a Blender et son moteur de jeu intégrer. Il est programable en python. Bien sur il n'a rien a voir a directX 9 côté puissance. Il peut gerer 150 000 points avecun certain ralentissement. Très loin de la fluidité obtenue dans des jeu comme CODMW2 qui contiennent des cartes de plusieurs millions de points.
    Pour augmenter la fluidité de mon jeu je décide de creer un LOD ( level of détail ). Je vais l'utilise pour mon herbe en relief et faire en sorte de n'afficher que celle qui est nécessaire. Celle qui se trouve a proximité de mon personnage. Mais cela nécessite, en fonction de la map, de gerer des milliers d'objet.
    Et le LOD écrit en python a ici un peu la fonction inverse et les temps de calcul étant tros long la fluidité du jeu en prend un coup. C'est pourquoi j'ai besoin de savoir quel est le meillur moyen pour exploiter des renseignements sauvegarder dans une variable en python

  2. #2
    Membre émérite
    Avatar de Antoine_935
    Profil pro
    Développeur web/mobile
    Inscrit en
    Juillet 2006
    Messages
    883
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur web/mobile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 883
    Par défaut
    Si vous avez besoin de grosses perf pour un petit bout de code, rien ne vaut un peu de C. Si vous tenez à le faire en Python, essayez de vous servir de Psyco. Il optimise bien les algorithmes.

    Liste, tuple et str sont tous trois représentés en interne par des tableaux, si je ne m'abuse.

    Accéder à chaque caractère d'une chaine crée à chaque itération un nouvel objet de type str. Du moins je pense. C'est susceptible de prendre du temps.

    Un tuple n'est pas aisément modifiable. Ce n'est visiblement pas ce qu'il vous faut. Notez qu'il est parfois plus simple (et rapide) de créer une nouvelle variable et de jeter l'ancienne.

    La liste se pose donc comme la meilleure solution des trois. Il y a peut-être mieux encore ailleurs.

    Un générateur pourrait être une belle solution, si c'est applicable.

    Enfin, utilisez un for : moins de code python exécuté, plus de code C.

  3. #3
    Membre confirmé

    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 70
    Par défaut
    Un générateur pourrais être une belle solution ? désolé mais je ne comprend pas vraiment.
    En fait je ne peu pas utilise autre chose que du python. C'est le seul language de programmation que le blender game engine peut interprète. Et donc je ne pense pas que je puisse utiliser des dérive de python comme Psyco.

    J'ete arrive moi même a la conclusion d'utiliser une liste avec une bouclée for
    dans le style :
    for i on list:
    ...
    ...

  4. #4
    Membre émérite
    Avatar de Antoine_935
    Profil pro
    Développeur web/mobile
    Inscrit en
    Juillet 2006
    Messages
    883
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur web/mobile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 883
    Par défaut
    Citation Envoyé par rezuz Voir le message
    Un générateur pourrais être une belle solution ? désolé mais je ne comprend pas vraiment.
    Les générateurs sont des sortes d'itérateurs, utiles pour générer des donnés en fonction des besoins uniquement. Apprenez à jouer avec, c'est utile.

    En fait je ne peu pas utilise autre chose que du python. C'est le seul language de programmation que le blender game engine peut interprète.
    Cela ne vous empêche pas d'utiliser ctypes pour charger des .so / .dll, ou d'importer des modules compilés avec l'interface C de python, ou pourquoi pas SWIG.

  5. #5
    Membre Expert
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 941
    Par défaut
    Si c'est vectorisable, il faudrait regarder du côté de numpy.

Discussions similaires

  1. Comment exploiter une variable d'une classe de type JFrame
    Par kamala dans le forum Agents de placement/Fenêtres
    Réponses: 8
    Dernier message: 01/07/2011, 16h35
  2. Comment exploiter une variable contenant de l'HTML ?
    Par beber005 dans le forum Général JavaScript
    Réponses: 51
    Dernier message: 22/06/2011, 12h55
  3. Comment exploiter les variables dans une fonction ?
    Par spawns dans le forum Langage
    Réponses: 2
    Dernier message: 20/06/2011, 00h06
  4. changer vitesse animation flash avec variable php
    Par wrathchild dans le forum Flash
    Réponses: 0
    Dernier message: 01/05/2008, 20h25
  5. [RegEx] Formulaire et exploitation de variable via "ereg"
    Par javaboy dans le forum Langage
    Réponses: 2
    Dernier message: 10/07/2007, 14h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo