Найти - Пользователи
Полная версия: свертка
Начало » Python для новичков » свертка
1 2
Ed
Rodegast
Встроенная функция reduce
Интересно было бы взглянуть на ваше решение данной задачки с использованием ‘встроенной функции reduce’
eiyawii
да, я книгу читаю по питону, но так как я сразу хочу решать насущные вещи, то соответственно и пишу на форум. спасибо всем кто подсказал, ваши высказывания привнесли понимание по некоторым вопросам.
вообще свертка как раз нужна, которая описана здесь http://www.dsplib.ru/content/conv/conv.html
в общем я разобрался, и решение оказалось куда ближе - в википедии есть код на С++, который работает как надо и соответственно для питона его переписать не проблема.
doza_and
eiyawii
ошибка - нет модуля с таким именем, а если пишу в текстовом редакторе и запускаю, то всё работает, в чем дело?
У меня импортируется там и там. Обратите внимание на то какой питон запускается, может у вас их 2 разных - это помоему наиболее вероятная причина.
eiyawii
doza_and
eiyawii
ошибка - нет модуля с таким именем, а если пишу в текстовом редакторе и запускаю, то всё работает, в чем дело?
У меня импортируется там и там. Обратите внимание на то какой питон запускается, может у вас их 2 разных - это помоему наиболее вероятная причина.
да, совершенно верно. у меня были установлены питоны х86 и х64 в одну папку, отсюда и возникли проблемы.
eiyawii
чтобы не создавать новую тему, подскажите, как при чтении из файла брать символы, которые находятся между двумя определенными другими символами, например если строка содержит “re:=4to-to;”, то надо взять “4to-to”(т.е. то, что находится иежду “=” и “;”) из этой строки и добавить в список.
doza_and
первое что приходит в голову
import re
s="re:=4to-to;"
re.search("=(.+);",s).group(1)
eiyawii
хм, да вот только что в лутце прочитал про модуль re, но попробовал таким образом написать - не получается. если в строке попадаются подобные выражения, то возвращается 4to-to а потом остальные элементы
import re
s="re:=4to-to; djf:=565666;"
s=re.search("=(.+);",s).group(1)
print s
что означает второй аргумент у функции search? 1ый - шаблон по которому происходит поиск, а второй строку/файл в которой/ом происходит поиск?
doza_and
Второй аргумент строка в которой идет поиск. Можно специфицировать точнее что ищите.
re.search("=([^=]+);",s).group(1)[/code]
Теперь это строка без знаков '='
Если захотите обрабатывать вложенные равенства типа "a=b=c=4-5" что в c++ вполне возможно, то тогда проще сделать нормальный парсер - pyparsing или coco/R.
py.user.next
eiyawii
то возвращается 4to-to а потом остальные элементы
"=(.+?);"
берёт минимальное совпадение
doza_and
кстати - поребности бывают разные но:
свертка называется convolve

например есть numpy.convolve я поверхностно глянул - она незамысловатая вроде - трудоемкость линейно растет с длинной шаблона(ядра преобразования).
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB