Разница между методами remove() и discard() для удаления элементов из множества в Python заключается в поведении, когда удаляемый элемент отсутствует в множестве. 1
Метод remove() удаляет элемент, но если его нет в множестве, генерирует исключение KeyError. 1
Метод discard(), в свою очередь, не делает ничего, если переданное значение отсутствует в множестве. 15
Таким образом, remove() лучше использовать, когда есть уверенность, что удаляемый элемент существует в множестве, а discard() — когда нет уверенности в этом. 5