es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Si la clave_m = 24, cómo volver al inicio en la lista del alfabeto y si se termina, continuar el proceso.

si el key_m = 24, ¿cómo volver al principio de la lista del alfabeto y si se completa continuar el proceso desde el índice 0?

el proceso es: tomar cada otro carácter en el alfabeto excepto key1)

def the_prosses():
    k = 36
    #input key= list(map(ord, key1) for exaple key1 = shadi
    c = list(map(int, (p ** x for x in m)))
    c_after_m_a = [x % k for x in c]
    c_after_m_a = list(map(int, c_after_m_a))

necesito hacer ese proceso con cada otro carácter en el alfabeto y reemplazarlo después de
la key1 como antes y si el keym llega a 25 regresar al índice 0 hasta que alcance a keym

def replace():
    alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
                'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']

m_b = [['y], ['a'], ['#], ['b'], ['o], ['i'],
   ['c'], ['d'], ['e'], ['f'], ['g'], ['h'],
   ['j'], ['k'], ['l'], ['m'], ['n'], ['p'],
   ['q'], ['r'], ['s'], ['t'], ['u'], ['v'],
   ['w'], ['x'], ['z'], ['_'], ['-'], ['!'],
   ['?'], ['$'], ['/'], ['"'], ['+'], ['%']]


for idx, value in enumerate(c1, start=key_m):
    alphabet[idx] = m_b[value]
print(alphabet)

la salida con key_m menor a 25

the output with key_m under 25

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para regresar al principio de la lista de alfabeto y continuar el proceso desde el índice 0, puedes agregar la siguiente línea de código a la función replace(), justo antes del bucle for:

    if key_m >= len(alphabet):
        key_m = 0
    

    Este código verifica si el valor de key_m es mayor o igual que la longitud de la lista de alfabeto. Si es así, entonces key_m se reinicia a 0, comenzando efectivamente el proceso desde el principio de la lista.

    Aquí está la función replace() actualizada con el código agregado:

    def replace():
        alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
                    'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
    
        m_b = [['y'], ['a'], ['#'], ['b'], ['o'], ['i'],
               ['c'], ['d'], ['e'], ['f'], ['g'], ['h'],
               ['j'], ['k'], ['l'], ['m'], ['n'], ['p'],
               ['q'], ['r'], ['s'], ['t'], ['u'], ['v'],
               ['w'], ['x'], ['z'], ['_'], ['-'], ['!'],
               ['?'], ['$'], ['/'], ["@"], ['+'], ['%']]
    
        if key_m >= len(alphabet):
            key_m = 0
    
        for idx, value in enumerate(c1, start=key_m):
            alphabet[idx] = m_b[value]
        print(alphabet)
    

    Con este código, si key_m es 24, la función reemplazará el caractér número 24 en la lista de alfabeto con el caractér correspondiente de m_b, y luego reiniciará key_m a 0 antes de reemplazar el primer caractér en la lista. Este proceso continuará hasta que todos los caractéres en c1 hayan sido procesados.

Comments are closed.