Vous devez écrire une fonction duplik admettant en paramètre une chaine de caractères. En sortie on doit obtenir une chaine où chaque caractère est soit “(“ (si le caractère n’apparait qu’une seule fois dans la chaine initiale), soit “)” (si le caractère apparait plusieurs fois).
>> duplik("bacasable")
'))()())(('
def duplik(txt): sortie="" for c in txt: if txt.find(c)==txt.rfind(c): sortie+="(" else: sortie+=")" return sortie # Version 2 def duplikv2(txt): sortie="" for c in txt: sortie+= "(" if txt.find(c)==txt.rfind(c) else ")" return sortie # Version 3 def duplikv3(txt): return "".join(list(map(lambda c: "(" if txt.find(c)==txt.rfind(c) else ")", txt))) # Version 4 def duplikv4(txt): sortie="" for c in txt: sortie+= ")" if txt.count(c)>1 else "(" return sortie # Version 5 def duplikv5(txt, sortie=""): for c in txt: sortie+= "()"[txt.count(c)>1] return sortie # Version 6 def duplikv6(txt): return "".join(list(map(lambda c: "()"[txt.count(c)>1], txt)))