Problème sous Python

Sous Python, j’ai utiliser le module random.sample, ce qui me retourne un résultat de la forme d’un tableau ex :[5,6].
Ensuite j’ai utilisé un raw_input, ce qui me retourne un résultat de la forme chaine de caractères ‘5,6’. Or j’aurais besoin que c’est deux résultat soit considéré comme égaux. Comme puis-je faire ? Autrement dit peut on enlever les [ ] ou mettre des ‘’ comme l’on veut ?
Merci

Salut,
D’un cote tu as une liste d’entiers: [5,6]
Et de l’autre une chaine de caractere (string): ‘5,6’

J’ai des methodes pour convertir l’un vers l’autre en dessous. J’utilise des fonctions tres utiles de python:

  • map permet d’appliquer une fonction a tous les elements d’une liste, et renvoie la liste ‘image’.
  • join permet de lier par un caractere (ici la virgule) les elements d’une liste de strings
  • split permet de transformer une chaine de caracteres en une liste, en separant les ‘mots’ par un caractere que l’on specifie, ici la virgule.

Pour transformer la liste d’entiers en string:
l = [5,6]
l2 = map(str, l) #l2 == [‘5’, ‘6’]
s = ‘,’.join(l2) #s == ‘5,6’
print s

Pour transformer une chaine de carac en liste d’entiers:
s = ‘5,6’
l = s.split(’,’) # l == [‘5’, ‘6’]
l2 = map(int, l) # l2 == [5, 6]
print l2
Edité le 13/07/2008 à 15:30

OK merci j’essaie ca…

J’ai essayé de transformer une chaine de carac en liste d’entiers, sauf que ma chai^ne c’est ‘noir,blanc’ sauf que j’obtiens ce message d’erreur :
Traceback (most recent call last):
File “C:\Documents and Settings\Petiois\Bureau\new.py”, line 3, in
l2 = map(int, l) # l2 == [5, 6]
ValueError: invalid literal for int() with base 10: ‘noir’

Heu… tu veux vraiment transformer ‘noir’ et ‘blanc’ en entiers ?
Forcement tu vas avoir une erreur, la fonction int ne fonctionne que sur les caracteres qui representent des nombres !..

Tu voudrais que noir et blanc soient egaux a combien exactement ?

Comment ça à combien près ?