pętla for i liczenie kolejności znaków - Python

pętla for i liczenie kolejności znaków - Python
JG
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1
0

Witajcie, jestem początkująca i napotkałam dzisiaj na problem przy pętli for.
Program ma za zadanie pobrać od użytkownika słowo a następnie wypisać z niego wszystkie litery poza a, o, e, i, u.

Z tego co mi się wydaje błąd jest z "i" oraz numerowaniem w ten sposób kolejnych liter w słowie, jednak zupełnie nie wiem jak to poprawić. Musi się w nim znaleźć pętla for i continue.

Z góry dziękuję za odpowiedź.

wow.PNG

TS
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 865
0

Zrób sobie taki test:

Kopiuj
for i in slowo_uzytkownika:
    print(i)

Zobaczysz, że pod i nie masz indeksów tylko tam masz kolejne literki.

Więc kiedy robisz:

Kopiuj
slowo_uzytkownika[i]

to jeżeli pod slowo_uzytkownika kryje się "MAMA" to w pierwszej iteracji pętli robisz: slowo_uzytkownika["M"].

Żeby pod i mieć indeksy możesz zrobić następująco:

Kopiuj
>>> for i, letter in enumerate("mama"):
...     print(f"{i}: {letter}")
...
0: m
1: a
2: m
3: a

lub

Kopiuj
>>> word = "mama"
>>> for i in range(len(word)):
...     print(f"{i}: {word[i]}")
...
0: m
1: a
2: m
3: a
ledi12
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
1
Kopiuj
slowo = input("podaj slowo: ") #dupa
print("\n".join(x for x in slowo if x not in "aoeiu"))
>> d
>> p

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.