Я пытаюсь написать программу python, которая при наличии списка строк удалит дубликаты символов из отдельных строк списка. Моя работа на данный момент такова:
#program: removeduplicates.py
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("-lst", nargs='+', type=str, required=True)
xyz = parser.parse_args()
duplist = xyz.lst
def duplicate_destoryer(duplist):
finallist = []
for word in duplist:
x = set()
list = []
for ch in word:
if ch not in x:
set.add(ch)
list.append(ch)
finallist.append(list)
return finallist
if __name__ == "__main__":
print(duplicate_destoryer(duplist))
В моей командной строке я ввожу
python removeduplicates.py -lst aarrtt ddwwtt
, и мой желаемый результат - (не имеет значения, в скобках списка или просто выписан):
art dwt
Код, который я написал, имеет логическое значение для меня, но я продолжаю получать сообщение об ошибке дескриптор 'add' для объектов 'set' не применим к объекту 'str' Это справедливо и все, но по мере дальнейшего исследования я чувствую, что все больше сталкиваюсь с примерами кода, где set.add () используется со строковыми объектами.
Может ли кто-нибудь указать мне правильное направление или сказать мне, что я здесь делаю неправильно?