mardi 21 juin 2022

condition to randomly replace a character

tengo una secuencia, a la cual le remplazo 5 caracteres al azar, el problema que tengo es como remplazar el caracter al azar, este en algunos casos se reemplaza por si mismo, como puedo ponerle una condicionalidad para que por ejemplo si el caracter a reemplazar coincidencias Con "a" solo se reemplaza por "b,c,d o e", si el caracter a reemplazar coincide con "b" solo se reemplaza por "a,c,d o e"...

    import random
    s1='ecaaaeadddeeecbddddb'
    print(s1)
    change_locs = set(sample(range(len(s1)), 5))
    changed = (random.choice(['a','b','c','d','e',]) if i in change_locs else c for i,c in 
    enumerate(s1))
    s2=''.join(changed)
    print(s2)



Aucun commentaire:

Enregistrer un commentaire