Форум сайта python.su
0
Если в тексте есть слова, которые повторяются, как их найти и вывести в отдельный список?
Офлайн
103
>>> import re >>> s = """ou may wish to load the Maps API JavaScript code after your page has finished loading, or on demand. To do so, you can inject your own <script> tag in response to a window.onload event or a function call, but you need to additionally instruct the Maps JavaScript API bootstrap to delay execution of your application code until the Maps JavaScript API code is fully loaded. You may do so using the callback parameter, which takes as an argument the function to execute upon completing loading the API""" >>> l = re.split('\W*', s) >>> a = [] >>> for i, j in enumerate(l): ... if j not in a and j in l[:i]: ... a.append(j) ... >>> print(a) ['your', 'to', 'or', 'a', 'you', 'the', 'Maps', 'JavaScript', 'API', 'code', 'may', 'do', 'so', 'function', 'loading']
Отредактировано terabayt (Июнь 15, 2015 21:22:10)
Офлайн
0
спасибо)
хотела бы еще спросить, в res хочу чтобы вывело 3 первых слова
[code import re
res =
for line in “манна, осанна, мумма, кллорд” :
linew = re.findall(r“мм|нн”, line)
res.extend(linew)]
а выводит пустой список
а такой вариант
text = “манна, осанна, мумма, кллорд”
rese = lambda text: re.findall(r'мм|нн', text)
выводит сам шаблон
rese(text)
Офлайн
103
@mary@вставьте правильно код
в res хочу чтобы вывело 3 первых слова
Офлайн
0
import re res = [] for line in “манна, осанна, мумма, кллорд” : linew = re.findall(r“мм|нн”, line) res.extend(linew)]
Офлайн
0
text = “манна, осанна, мумма, кллорд” rese = lambda text: re.findall(r'мм|нн', text) >>>rese(text) ['нн', 'нн', 'мм']
Офлайн
0
а мне нужно чтобы слово полностью выводилось
Офлайн
103
>>> import re >>> text = "манна, осанна, мумма, кллорд".decode('utf-8') >>> l = re.findall(u'(?u)(\w*[мм|нн]\w*)', text) >>> for i in l: ... print i.encode('utf-8') ... манна осанна мумма
Отредактировано terabayt (Июнь 16, 2015 22:54:33)
Офлайн
0
хотела бы спросить, зачем мы меняем кодировку?
Офлайн
0
у меня пошло без кодировки и с + вместо *
Офлайн