Je dois préférer ceci en disant que je suis un néophyte (apprentissage), alors renoncez à l'omission de l'évidence de déférence pour un homme qui a eu une exposition limitée à votre monde (python).
Mon objectif est de Obtenez une chaîne d'un utilisateur et convertissez-la en chaîne HEX et ASCII. J'ai pu accomplir cela avec succès avec hexagonal ( Encode ("HEX") code>), mais pas si avec ASCII. J'ai trouvé la méthode ord () code> et j'ai tenté d'utiliser cela, et si j'utilise simplement: impression ORD (i) code>, la boucle iTère la traversée et imprime les valeurs à la Écran verticalement, pas où je les veux. Donc, j'ai essayé de les capturer avec un tableau de cordes afin que je puisse les concéder à une ligne de chaîne, les imprimer horizontalement sous la valeur "hex". J'ai juste épuisé mes ressources sur la création de cela ... Toute aide est apprécié. Merci! p> while True:
stringName = raw_input("Convert string to hex & ascii(type stop to quit): ")
if stringName == 'stop':
break
else:
convertedVal = stringName.encode("hex")
new_list = []
convertedVal.strip() #converts string into char
for i in convertedVal:
new_list = ord(i)
print "Hex value: " + convertedVal
print "Ascii value: " + new_list
3 Réponses :
quelque chose comme ça? Ceci vous donne P> >>> convert_to_ascii("hello")
'104 101 108 108 111'
Est-ce ce que vous recherchez?
Oui! J'ai eu du code presque identique à celui plus tôt, mais éteint! Pourquoi avez-vous utilisé la mystérieuse () sur la ligne StringName ... Merci encore!
print "ASCII value: ", ", ".join(str(i) for i in new_list)
Qu'attendez-vous que votre sortie ASCII ressemble? Juste des valeurs décimales délimitées par des virgules? I.e.: "97, 98, 65, 65"
Si un utilisateur entre dans la chaîne: '123431': hex = 313233343331 ASCII = 49 50 51 52 51 49
Merci DP .... En outre, je ne voulais pas mettre des espaces entre les valeurs ASCII sur mon dernier commentaire.