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 :

Creation d'objet a partir d'un fichier - espace de nom - [Fait]


Sujet :

Python

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Points : 24
    Points
    24
    Par défaut Creation d'objet a partir d'un fichier - espace de nom -
    Bonjour a tous,
    je souhaite a partir d un fichier ".txt" extraire/creer plusieur objets a l aide d'une boucle.
    Tous marche "presque" bien, J'ouvre le fichier, je parviens a extraire les donnees, a creer les objets......sauf que pour utilser les objets a la fin de la procedure, je les ranges dans une liste. (je n'ai pas trouver d'autre solutions..Pb d'espace des noms....

    Un print sur la liste me confirme bien la creation des objets (meme si c'est pas tres causants....
    >>> print liste_point
    [<__main__.Point instance at 0x00E63F30>,......etc.....]

    Mon probleme viens du fait de vouloir utiliser les objets de cette liste, par exemple calculer la distance entre 2 points, comment faire pour retrouver le nom exact de mes objets ...???? (Une solution est d'integrer ce nom dans l'objet ? mais cela ne repons pas a mon probleme d'utilisation de l'objet en question..., de plus cela m'oblige a gerer une liste parallele... cela me semble lourds, apres plusieur heures de recherche sur Internet, je vous appelle a l'aide.... Merci par avance
    ci dessous mon code .....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Fichier point.txt (fichier d'entree)
    POINT    1        40      60
    POINT    2        10      -5
    POINT    3        0       60
     
    class Point:
    	"""Definiion d'un point"""
    	def __init__(self,x=0, y=0): 
                    self.x =float(x)
    		self.y =float(y)
     
    def lit_point (fichier):
    	'ouvre un fichier .txt et extrait les points'
    	fs=open(fichier,'r')
    	LISTE_POINT =[]
    	while 1:
    		ligne=fs.readline()
    		if ligne=="":
    			break
    		else:
    			ligne=ligne[:-1] # suppression du caractere de fin de ligne
    			if "POINT" in ligne[0:7].upper():# longeur des champs 8 caracteres
    				nom="P"+ligne[8:16].strip() # creation du nom du point
    				nom=Point(x=ligne[16:24].strip(),y=ligne[24:32].strip()) # creation de l'objet point
    				LISTE_POINT.append(nom) # Ajout du nouveau point a la liste
    	fs.close()
    	return LISTE_POINT  # Fin de boucle While
     
    from math import sqrt
    def distance(pt1,pt2):
        'calcul la distance entre 2 points'
        distance =sqrt((pt2.x-pt1.x)**2+(pt2.y-pt1.y)**2+(pt2.z-pt1.z)**2)
        return distance

  2. #2
    Expert éminent sénior
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Points : 10 067
    Points
    10 067
    Par défaut
    La ligne suivante de ton code ne sert à rien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nom="P"+ligne[8:16].strip() # creation du nom du point
    car nom est écrasé juste après

    Pour déclaaré un nom de variable à partir d'un string, tu peux faire comme regarder la FAQ:
    http://python.developpez.com/faq/?pa...es#GenStrDecla

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Points : 24
    Points
    24
    Par défaut
    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Creation d'un automate à partir d'un fichier.txt
    Par kahrah dans le forum Langages de programmation
    Réponses: 0
    Dernier message: 13/04/2013, 09h13
  2. Réponses: 1
    Dernier message: 19/03/2011, 18h30
  3. Creation d'un bean à partir d'un objet
    Par stephane92400 dans le forum JSF
    Réponses: 5
    Dernier message: 16/08/2007, 11h06
  4. Probleme de clonage d'un objet serialise a partir d'un fichier XML
    Par h_ismaili dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 10/06/2007, 11h07
  5. creation d'objet de classe a partir de string
    Par mencaglia dans le forum C++
    Réponses: 1
    Dernier message: 14/03/2006, 09h56

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