Python - преобразование строки в список множеств - PullRequest
0 голосов
/ 29 января 2020

У меня есть список строк, таких как ['abc,bcd,cde,def,bcd', 'ijk,jkl', 'lmn,mno,nop,mno' ], и я пытаюсь преобразовать в список наборов строк, как указано ниже

[{'abc','bcd', 'cde', 'def'}, {'ijk','jkl'}, {'lmn','mno','nop'}]

Я пытался l oop через каждый элемент в список и использовал функцию set () для преобразования, но он возвращал каждый символ вместо каждой строки, как показано ниже

L= ['abc,bcd,cde,def,bcd', 'ijk,jkl', 'lmn,mno,nop,mno' ]

for i in L:
     print(set(i))

вывод:

{'b','c','d','e','a','f'}
{'j','i','k','l'}
{'m','l','n','o','p'}

Мой желаемый вывод: [{'abc','bcd', 'cde', 'def'}, {'ijk','jkl'}, {'lmn','mno','nop'}]

Подскажите, пожалуйста, что я делаю неправильно ... (я новичок Python)

1 Ответ

1 голос
/ 29 января 2020

Вы можете сделать это быстро и просто, просто разделив строки, где вы найдете запятые.

string_list = ['abc,bcd,cde,def,bcd', 'ijk,jkl', 'lmn,mno,nop,mno']
string_sets = []

for string in string_list:
    string_sets.append(set(string.split(",")))
...