Найти - Пользователи
Полная версия: Задача «Удалить каждый третий символ»
Начало » Python для новичков » Задача «Удалить каждый третий символ»
1 2
marvellik
LLIAMAH
по-моему мой replace должен заменять только каждое третье вхождение
 print(''.join([i for x,i in enumerate(input()) if x%3 !=0]))
твой replace заменяет все вхождения на каждой итерации цикла и ему все равно с каким шагом ты идешь по циклу
если хочешь через replace
 s=input()
for i in range(len(s)):
    if i%3==0:
        s=s.replace(s[i],' ',1)
print(s.replace(' ',''))
LLIAMAH
спасибо большое, я понял свою ошибку
LLIAMAH
 s=input()
a=len(s)
for i in range(-a,0,3):
    s=s.replace(s[i],'',1)
print (s)

вот мой доработанный рабочий код
krok64
Если ввести 1234567890 то твоя программа удалит 1 4 7 0. Это то что ты хотел?
LLIAMAH
все верно, согласно задаче должен быть удален символ, чьи индексы делятся на 3
Rodegast
Не нужно циклов. Если строку перевести в список, то решение становится банальным:
 >>> a = list("Python")
>>> del a[::3]
>>> "".join(a)
'yton'
LLIAMAH
это очень здорово, но я питон изучаю по онлайн учебнику и до темы “списки” еще не дошел))
“ламер” еще)
Vintets
LLIAMAH
все верно, согласно задаче должен быть удален символ, чьи индексы делятся на 3

Задача шикарна.
“Удалить каждый третий символ” и “ Удалить символы, чьи индексы делятся на 3” это совершенно разные вещи.

ABCDEFG - каждый третий это CF
ABCDEFG - символы, чей индекс делится на 3: ADG (0 делится на 3? )
LLIAMAH
Это конечно мой косяк, что я вставил название задачи, а условие не вставил. Но потом я дал ссылку на задачу.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB