Python: como remover / excluir cada n-ésimo elemento da lista?

Eu já havia consultado este post:Python: construindo uma nova lista a partir da existente, descartando todos os elementos n-ésimos, mas por algum motivo não funciona para mim:

Eu tentei assim:

def drop(mylist, n):
    del mylist[0::n]
    print(mylist)

Esta função pega uma lista en. Em seguida, ele remove todos os n-ésimos elementos usando n-step da lista e imprime o resultado.

Aqui está minha chamada de função:

drop([1,2,3,4],2)

Saída errada:
[2, 4] ao invés de[1, 3]

Então eu tentei uma variante no link acima:

def drop(mylist, n):
    new_list = [item for index, item in enumerate(mylist) if index % n != 0]
    print(new_list)

Mais uma vez, chamada de função:

drop([1,2,3,4],2)

Dá-me o mesmo resultado errado:[2, 4] ao invés de[1, 3]

Como remover / excluir / soltar corretamente todos osn-ésimo item de uma lista?

questionAnswers(5)

yourAnswerToTheQuestion