Как правильно преобразовать класс list в str с удалением лишних данных?
Есть данные в списке. Подскажите, как правильно преобразовать их в строку и удалить лишние данные?
Пример исходных данных:
[('simple musical instrument', 9.0), ('make', 1.0)]
<class 'list'>
требуется:
simple musical instrument
<class 'str'>
Нужно вывести только ключевые слова с весом больше 1.
Ответы (2 шт):
Автор решения: passant
→ Ссылка
Что такое "лишние данные" можно только догадываться. Но если догадки правильны, то например, так:
lt=[('simple musical instrument', 9.0), ('make', 1.0)]
st=[]
for row in lt:
st.append(row[0])
st=' '.join(st)
print(st)
Или так:
st=str()
for row in lt:
st=st+' '+row[0]
print(st)
Результат в обоих случаях тождественен:
simple musical instrument make
Автор решения: Jack_oS
→ Ссылка
words_list = [
('noise', 0.9),
('simple', 7.3),
('musical', 8.1),
('drum', 1.0),
('make', 1.0),
('instrument', 3.3),
]
>>>type(words_list)
<class 'list'>
Обходите список кортежей, проверяйте значение второго элемента и соедините в строку с разделителем пробелом:
search_str = ' '.join(word[0] for word in words_list if word[1]>1)
>>> search_str
'simple musical instrument'
>>> type(search_str)
<class 'str'>