replace=({'old':'v1', 'new':'v2'}) s='v1' print(s.replace(random.choice(replace)))
d=random.choice(replace)
replace=({'old':'v1', 'new':'v2'}) s='v1' print(s.replace(random.choice(replace)))
habrmanникак:
как заставить такой код работать
str.replace(old, new[, max])
replace=({'old':'v1', 'new':'v2'},{'old':'v1', 'new':'v2'},{'old':'v1', 'new':'v2'})
habrmanтак чтоле?
хочу рандомно брать 1 элемент словарь и делать замену в строке
import random replace=({'old':'v1', 'new':'v2'},{'old':'v1', 'new':'v3'},{'old':'v1', 'new':'v4'}) s='v1' for i in range(5): random_dict=(random.choice(replace)) print(s.replace(random_dict['old'],random_dict['new'])) >>> v2 v4 v3 v2 v3 >>>
random.choice(replace))>>> import random >>> s = "123456789" >>> tab = [('1', 'a'), ('2','b'), ('3','c'), ('4', 'd'), ('5', 'e')] >>> s.translate({ ord(x):y for x,y in [random.choice(tab)] }) '1b3456789'
habrmanтут собственно вопрос что вам таки конкретно надо?
думал может replace умеет мапить словарь на параметры
import random replace={'old':'v1', 'new':('v2', 'v3','v4')} s='v1' for i in range(5): print(s.replace(replace['old'],random.choice(replace['new'])))
import random replace=(('v1','v2'),('v1','v3'),('v1','v4')) s='v1' for i in range(5): print(s.replace(*random.choice(replace)))