begin process at 2010 09 04 11:50:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Python

 > 

Archives

 > 

Au secours !!!

 > 

coversion string<-->list


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

coversion string<-->list

jeudi 4 mai 2006 à 13:27:01 | coversion string<-->list

john491

Bonjour a tous.
Je dois creer une petite bibliotheque sur les polynomes ( donc j'ai pas le droit d'utiliser les fonctions predefinies sur les polynomes :( )
Et ce qui me bloque est d'ecrire une fonction qui transforme une chaine de caracteres en une liste par exemple : pour la chaine '2x^7-36x^2+6x+1' la fonction doit renvoyer la liste : [1,6,-36,0,0,0,0,2] ( ou [2,0,0,0,0,-36,6,1])
J'ai ecrit une fonction (mais qui ne marche pas malheureusement :( )


from string import *
>>> l='2x^7-36x^2+6x+1'
>>> y=split(l,'+')
>>> y
['2x^7-36x^2', '6x', '1']
>>> x=[split(y[i],'-') for i in range(len(y))]
>>> x
[['2x^7', '36x^2'], ['6x'], ['1']]
>>> t=[x[i][j] for i in range(len(x)) for j in range(len(x[i]))]
>>> t
['2x^7', '36x^2', '6x', '1']
>>> z=[split(t[i],'x') for i in range(len(t)) ]
>>> z
[['2', '^7'], ['36', '^2'], ['6', ''], ['1']]
>>> s=[z[i][j] for i in range(len(z)) for j in range(len(z[i]))]
>>> s
['2', '^7', '36', '^2', '6', '', '1']
>>> f=[split(s[i],'^') for i in range(len(s)) ]
>>> f
[['2'], ['', '7'], ['36'], ['', '2'], ['6'], [''], ['1']]
>>> for i in range(len(h)-1,-1,-1):
if h[i]=='':
del(h[i])
#ou encore (equivalent)
>>> b=[]
>>> for i in range(len(h)):
if h[i]!='':
b=b+[h[i]]
>>> b
['2', '7', '36', '2', '6', '1']

Ca me permet de recuperer les coefficients et les puissances mais je perds le signe des coefficients a la fin (le signe ' - ' )
Toutes les indications sont les bienvenues.
Merci d'avance.
PS1:Je dois rendre mon projet dans peux de jours.
PS2:Je ne suis que debutant en Python.
jeudi 4 mai 2006 à 17:04:56 | Re : coversion string<-->list

taz_iup

Utilise les expressions régulière.
par exemple

en faisant des groupes dans ton expression régulière tu pourras facilement récupérer les informations qui te sont nécéssaires.
vendredi 5 mai 2006 à 16:06:07 | Re : coversion string<-->list

john491

Salut taz_iup.
c'est quoi une expression reguliere en python?
merci


Cette discussion est classée dans : 2x, for, range, in, len


Répondre à ce message

Sujets en rapport avec ce message

tri de fichier [ par mtanfin ] Bonjour;Alors voilà en fait je voudrais trier des fichiers en fonction de leur date de création. en fait le but est de regarder dans chaque fichier si Python / SQLite / for...in... [ par samylatortue ] Bonjour à tous,je suis face à un problème depuis quelque jours...j'ai une base de donnée dans laquel il y a 2 tables j'aimerais prendre une partie des Python, jeu de mémory [ par Mattmad ] Bonjour, je suis en train de plancher sur un jeu de memory via python mais je ne parviens pas à résoudre un "petit" problème, je vous pose la question idle caca [ par steede ] Bonjour, Est ce que quelqu'un a déjà eu une erreur de ce genre :UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 12: ordinal not i Problème avec les accents [ par TyFFoul ] Bonjour à tous! Je débute avec python et je suis bloqué depuis 2-3h... Voila mon problème : J'ai programmé un script qui me permet de récuper du texte probleme d'execution [ par albatof ] Bonjour,Avant d'apprendre a se servir d 'un module graphique, j'ai fait la comparaison entre gtk, tk et wx.wx: a l'air d'être trop compliqué.tk: sa fe MemoryLoadLibrary [ par laurent 50 ] Bonjour à tous, Je travail avec la version 2.5.2 de python et avec la version 0.6.9 du module py2exe. La compilation de mon application se déroule san Problème de tracé d'un histogramme avec matplotlib [ par Boy63 ] Bonjour a tous!Je rencontre un problème avec matplotib pour le tracé d'un histogramme. Je reçois un message d'erreur que je ne comprend pas. Exemple: encodage [ par rezuz ] voila ils se trouve que j'ai un petit problemme dans mon code. j'ais une chaine de caractère avec des carctere unicode donc que je voudrait encodé en paralléliser une simple fonction [ par Viny12 ] Bonjour, Je suis novice en python et j'aimerais savoir comment paralléliser une simple fonction qui calcule une jacobienne de sorte que le calcul pui


Nos sponsors


Sondage...

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales