Cómo Separar las Letras Dentro de una Lista?

0

Pregunta

Tengo este trozo de código

First = "152 162 152 145 162 167 150 172 153 162 145 170 141 16"
First = list(First.split())
solve = " "
for i in First:
    solve += chr(int(i, base=8))
print(solve)

lo he pegado en, es cómo separar las letras dentro de una lista en lugar de imprimir todas las letras juntas. He intentado solve = (solve.split(",") for sep in solve) pero me da un error. ¿qué voy a hacer exactamente es tomar un ord() el valor de cada letra y restar 4 a continuación, volver a la str por chr()

cryptography list python
2021-11-24 04:14:09
2

Mejor respuesta

1

Usted puede utilizar una lista de comprensión:

data = "152 162 152 145 162 167 150 172 153 162 145 170 141 16"
output = [chr(int(x, base=8)) for x in data.split()]
print(output) # ['j', 'r', 'j', 'e', 'r', 'w', 'h', 'z', 'k', 'r', 'e', 'x', 'a', '\x0e']

Si sólo desea utilizar su código original, entonces simplemente list(solve) va a hacer la lista de caracteres. Pero tenga en cuenta que hay una (tal vez no deseados) en blanco al comienzo de su solveesto sucede porque usted haya iniciado solve con " ", no "".


Si usted desea restar 4 de cada entero representación de los personajes (como se explicó en la pregunta), para obtener la cadena, luego

data = "152 162 152 145 162 167 150 172 153 162 145 170 141 16"
output = ''.join(chr(int(x, base=8) - 4) for x in data.split())
print(output) # fnfansdvgnat]

le proporcionará un acceso directo.

2021-11-24 04:25:02

Funcionado bien gracias señor.
iis2h
0

Usted puede utilizar la lista directamente en lugar de la cadena de la siguiente manera:

First = "152 162 152 145 162 167 150 172 153 162 145 170 141 16"
First = list(First.split())
solve = []
for i in First:
    solve.append( chr(int(i, base=8)))
print(solve)

Output: ['j', 'r', 'j', 'e', 'r', 'w', 'h', 'z', 'k', 'r', 'e', 'x', 'a', '\x0e']

Usted puede convertir a resolver para una cadena como la siguiente:

''.join(solve)
2021-11-24 04:19:04

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................