Je veux obtenir une liste d'INTS représentant les octets dans une chaîne. P>
3 Réponses :
Voulez-vous dire que les valeurs ASCII?
nums = []
for chr in mystring:
nums.append(ord(chr))
Oui, c'est le moins que nous puissions faire :)
J'ai même supprimé ma réponse Voir le vôtre car c'est le meilleur et mettre un commentaire (par conséquent supprimé) dites -1 pour ne pas utiliser la méthode plus simple - alors j'ai vu le vote en panne et le commentaire ... Undrotéd pour voir ce qu'il cherche .
Une option pour Python 2.6 et plus tard consiste à utiliser un byeArray :
>>> b = b'hello' >>> list(b) [104, 101, 108, 108, 111]
Pour clarifier pour l'OP, ces valeurs sont i> les valeurs ASCII.
Peut-être que vous voulez dire une série d'octets, par exemple reçu sur le net, représentant quelques valeurs entières? P>
Dans ce cas, vous pouvez "décompresser" la chaîne dans les valeurs d'entier à l'aide de décompressez () et spécifiez "i" pour entier comme chaîne de format. P>
@Amarghosh: C'est un peu ce que je parie ici :). Ce n'est pas que l'entrée serait une chaîne de zéros et de celles, mais des données binaires réelles réelles qui représentent des entiers. J'ai appris cela quand j'ai essayé de résoudre Vortex0, que je soupçonne que l'affiche de la question tente de résoudre .. ( Overtheweware.org/wargames/vortex/level0.shtml ) s'excuse de commenter ici, je semble être incapable de commenter la question actuelle. (Je suis nouveau ici!)
Devineuse intelligente, +1. À présent, l'auteur a expliqué ce qu'il voulait vraiment, mais de toute façon ...
Vous avez besoin de 50 représentants pour commenter les postes d'autres peuples - je viens de vous faire 10 points de plus près.
Merci à vous deux. Toute cette agitation sur un problème déjà résolu :)
Si vous ne voulez pas dire des valeurs ASCII (comme vous l'avez écrit dans un commentaire ci-dessous), qu'est-ce que faire i> vous voulez dire?
Pouvez-vous donner un exemple de ce que la chaîne ressemble à si vous n'êtes pas intéressé par les valeurs ASCII?
Essayez-vous de convertir une chaîne en int - dans ce cas, voir ma réponse - et quelqu'un me donne un badge MindReader;)
Allons-nous parier dessus (je doute que c'est ce qu'il veut)? Hé, Demande de fonctionnalité pour Meta: Pari Rep points sur quelle question signifie que le gagnant prend tout.
@TIM Dans ce cas, une autre option que je peux penser est de convertir
"00010100" code> à 20 et ainsi de suite - qui veut dire à ce sujet ;-)Je pensais que je n'ai pas voulu vouloir des valeurs ASCII, mais ils résultent pour être ce que je cherchais :) Désolé. La racine de ma confusion était que j'utilisais des caractères non alphabétiques et je ne me suis pas rendu compte que les valeurs étaient en réalité des valeurs ASCII.
@Juanjo Dans ce cas, vous pouvez aller de l'avant et supprimer ces votes; Et je dois dire que vous étiez trop vite dans le bon vote des personnes qui sont venues vous aider; n'a même pas attendu de clarifier votre problème!
@orangeoctopus J'étais même sur le point de proposer nous payons le pari à travers des primes. Heureusement je n'ai pas :)