Cześć.
Męczę się bo potrzebuję stworzyć program jaki zmieni w ciągu znaków powtarzany znak jaki się powtórzy na $. Przykładowo słowo technikinformatyk będzie jako technik$nforma$y$
Jak w ogóle się do tego zabrać? `
W tym kodzie nie możesz dodawać +1 do stringa, tu musiałby być integer (liczba). Możesz to spróbować zrobić tak, chociaż wyjściowo uzyskasz to samo, co w moim kodzie. Według mnie nie ma sensu tak sobie kompikować życia
w = input("Podaj wyraz: ")
w2 = {}
for ch in w:
if ch in w2:
w2[ch] += 1
else:
w2[ch] = 1
for ch, val in w2.items():
if val > 1:
replaced = w.replace(ch, "$")
print(replaced)
@roobal
Ten kod co mam wyświetla jak w tym ćwiczeniu chciałem czyli output:
podaj wyraz?
technikinformatyk
technik$$forma$y$
i nawet działało
Potrzebowałem jak użytkownik poda technikinformatyk to wynik mu się wyświetli jako
technik$$forma$y$
w2 += ch
^
IndentationError: unindent does not match any outer indentation level
Natomiast Ty chcesz zamienić kilka liter w jednym stringu (i, n, t , k), czyli musiałbyś dopasować za jednym razem kilka liter. Pętla for w moim kodzie szuka liera po literze, tej samej, dlatego dla każdego duplikatu masz kilka wyjść.