[python] poker problème avec les strings
Fermé
AwwA
Messages postés
1
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
28 avril 2008
-
28 avril 2008 à 21:28
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 - 30 avril 2008 à 10:45
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 - 30 avril 2008 à 10:45
A voir également:
- [python] poker problème avec les strings
- Citizen code python avis - Accueil - Outils
- Boyaa texas poker - Télécharger - Cartes
- Trouver la position d'un élément dans une liste python ✓ - Forum Python
- Python est introuvable. exúcutez sans argument pour procúder ó l ✓ - Forum Python
3 réponses
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
29 avril 2008 à 00:08
29 avril 2008 à 00:08
Ce ne sont pas des print qu'il te faut, ta fonction doit retourner la chaine et non pas l'afficher:
def w(liste): if liste.count('h')>0: liste= liste.replace("h","",10) if liste.count('s')>0: liste= liste.replace("s","",10) if liste.count('d')>0: liste= liste.replace("d","",10) if liste.count('c')>0: liste= liste.replace("c","",10) return liste
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
934
29 avril 2008 à 01:08
29 avril 2008 à 01:08
Une solution plus pythonique
Voir par exemple
http://docs.python.org/tut/node7.html#SECTION007130000000000000000
root@osiris ~/src $ cat cut.py #!/usr/bin/python def chop(aString) : return aString[0 : -1] # on suppose que aString n'est ni None ni vide avar = ['9s', '9d', '10h', '9c', '8h', '13s', '3d'] result = map(chop , avar) print result root@osiris ~/src $ python cut.py ['9', '9', '10', '9', '8', '13', '3']
Voir par exemple
http://docs.python.org/tut/node7.html#SECTION007130000000000000000
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 659
30 avril 2008 à 10:45
30 avril 2008 à 10:45
Si c'est pour garder uniquement les chiffres, peut aussi utiliser isdigit() qui indique si un caractère est un chiffre ou non:
#!/usr/bin/python def keepDigits(chaine): return ''.join([c for c in chaine if c.isdigit()]) avar = ['9s', '9d', '10h', '9c', '8h', '13s', '3d'] result = map(keepDigits , avar) print result