
Max
04.06.2016
17:26:26
Лол, ну кароч распознавание музыки. Врубил его, врубил трек и отправил ему сообщение)
Да

Вжик
04.06.2016
17:26:52
вот below - это "ниже"

Max
04.06.2016
17:27:00
ДА, кнопка справа

Google

Max
04.06.2016
17:27:01
Лол

Вжик
04.06.2016
17:27:02
мне кажется, не очень удачно)

Max
04.06.2016
17:27:36
Нужно инструкцию нормальную) НУ кароч, сотрим

Panda
04.06.2016
17:27:49
хаха))
но к успеху идешь))

Max
04.06.2016
17:28:08
Так что никто не понимает как им пользоваться?

Вжик
04.06.2016
17:28:35
ух ты, распознал и ссылку на ютуб дал
Album: 'The Essential Joe Satriani'
Lable: Epic\/Legacy
Release Date: 2010-10-26https://www.youtube.com/watch?v=-swLPM1NcNo

Max
04.06.2016
17:28:46
Дыа

Вжик
04.06.2016
17:29:02
слеши какие-то между Epic и Legacy
заэкранировалось так, что даже пользователю отобразилось)

Max
04.06.2016
17:29:15
Это я поправлю)
Проблема с выводом.

Google

Вжик
04.06.2016
17:29:28
и перенос строки после даты релиза не вставился

Max
04.06.2016
17:29:39
Щас, заапдейчу по-бырому

Viktor
04.06.2016
17:29:57
я идиот

Dmitry
04.06.2016
17:30:56
оно позволяет даже "с лишними полями"

Viktor
04.06.2016
17:31:12
Да, вижу

Max
04.06.2016
17:31:22
Ща дайте я перезагружу бота

Viktor
04.06.2016
17:31:26
Сделаю joined пожалуй, чтобы с "лишними" полями было

Вжик
04.06.2016
17:31:28
ага
концертную версию со второго "кусочка" сделал) норм

Dmitry
04.06.2016
17:31:31
у меня сейчас в проекте этих наследований - уууу

Вжик
04.06.2016
17:32:35
добавление других баз с фингерпринтами предполагается? тот же musicBrainz

Viktor
04.06.2016
17:32:55
class Employee(Base):
__tablename__ = 'employee'
id = Column(Integer, primary_key=True)
name = Column(String(50))
type = Column(String(50))
__mapper_args__ = {
'polymorphic_identity':'employee',
'polymorphic_on':type
}
Это он в Employee.type будет записывать 'employee'?

Max
04.06.2016
17:32:56
Да, я еще то что не распознает в свою отдельную БД загонять буду
После бета теста
А так там пока что 40 миллионов аудио. Конечно, с ремиксами проблема
Их дохера
И все не загнать.

Вжик
04.06.2016
17:33:39
https://musicbrainz.org/doc/Development

Google

Max
04.06.2016
17:34:42

Вжик
04.06.2016
17:35:03
то есть, вот, конечно) https://acoustid.org/webservice
есть поиск по фингерпринту

Max
04.06.2016
17:36:05
Планирую добавить второй сервис распознавания, если первый не тащит.

Вжик
04.06.2016
17:37:08
щас их дофига, у каждого свои API, придётся делать это в виде либо плагинов, либо в виде универсального интерфейса
идея огонь, чесслово)

Dmitry
04.06.2016
17:37:55

Вжик
04.06.2016
17:38:00
а на гитхабе есть?

Max
04.06.2016
17:38:09
идея огонь, чесслово)
Я сам охуел когда придумал) Я 2 недели назад вообще не знал о том как пишут ботов для Телеграм
а на гитхабе есть?
я пользуюсь только bitbucketом. В приватном режиме) После бетки, выложу на github

Viktor
04.06.2016
17:39:03

Viktor
04.06.2016
17:39:05
Просто открой

Вжик
04.06.2016
17:39:10
супер
буду ждать)

Max
04.06.2016
17:39:17

Viktor
04.06.2016
17:39:28
И записать это в Employee еще

Max
04.06.2016
17:40:02
А зачем?
На гитхабе больше возможностей и аудитория. Это как стандарт.

Viktor
04.06.2016
17:40:15
Тогда наследованные даже думать не должны о polymorphic_identity

Google

Dmitry
04.06.2016
17:41:56

Viktor
04.06.2016
17:42:08
только сделать это как property и определить еще в родителе

Dmitry
04.06.2016
17:42:57
херню вот щас пишешь, есть у меня ощущение
проперти, в базе
но попробуй :)))

Viktor
04.06.2016
17:43:21
я имел ввиду базовый класс

Dmitry
04.06.2016
17:43:35
правда дело может кончиться метаклассами или декораторами

Admin
ERROR: S client not available

Viktor
04.06.2016
17:43:35
родителя то есть

Dmitry
04.06.2016
17:43:48
просто попробуй :)))

Viktor
04.06.2016
17:43:53
Пробую

Dmitry
04.06.2016
17:44:51
а я просто напомню про PEP-20, explicit is better than implicit и прочую неинтересную фигню :)

Марк
04.06.2016
17:52:40
(lambda x:x)(lambda y,x: y+x)((lambda z:z+5)(1), (lambda d:d)(1))
Седни со всякой такой поебенью игрался
по итогу вчерашнего разговора

Viktor
04.06.2016
17:53:33

trump ? trump ? hillary
04.06.2016
17:54:04
lisp какой-то

Google

Марк
04.06.2016
17:54:22
Я там нахуярил строчек десять такого дерьма, который толком ничего не выполняет, но зато синтаксически верен
In [149]: (lambda x: lambda x: lambda x: x)(1)(2)(3)
Out[149]: 3
In [150]: (lambda x: lambda x: lambda y: x)(1)(2)(3)
Out[150]: 2
In [151]: (lambda x: lambda x: lambda z: x)(1)(2)(3)
Out[151]: 2
In [152]: (lambda x: lambda z: lambda y: x)(1)(2)(3)
Out[152]: 1
А вот тут я так понять и не смог, как аргументы передаются
2.7

Aragaer
04.06.2016
17:55:27
ну тут почти что карриинг же получается
передаешь 1 аргумент, получаешь в качестве результата функцию, которая принимает еще один аргумент, а возвращает уже последнюю функцию
при этом очевидно, что скоуп каждый раз ужимается до минимально возможного
то есть lambda x: lambda y: lambda z: x - x тут от самой внешней функции, а lambda x: lambda x: lambda z: x - от второй.

Марк
04.06.2016
18:04:14
In [155]: (lambda x: lambda x: lambda x: x)(1)(2)(3)
Out[155]: 3
In [156]: (lambda y: lambda y: lambda y: y)(1)(2)(3)
Out[156]: 3
In [157]: (lambda z: lambda y: lambda x: z)(1)(2)(3)
Out[157]: 1
In [158]: (lambda z: lambda y: lambda x: y)(1)(2)(3)
Out[158]: 2
In [159]: (lambda z: lambda y: lambda x: x)(1)(2)(3)

Viktor
04.06.2016
18:05:33
Беру свои слова обратно, это вовсе не красиво

Марк
04.06.2016
18:05:49
In [161]: (lambda z: lambda y: lambda x: x)(1)(2)(3)
Out[161]: 3
In [162]: (lambda z: lambda y: lambda x: y)(1)(2)(3)
Out[162]: 2
In [163]: (lambda z: lambda y: lambda x: z)(1)(2)(3)
Out[163]: 1
Вот ровный пример

Viktor
04.06.2016
18:05:57
Только tablename оставлю динамический

Марк
04.06.2016
18:06:35
Да, для мну было неочевиден порядок вхождения переменных

Viktor
04.06.2016
18:07:04
Только tablename оставлю динамический
from sqlalchemy.ext.declarative import declared_attr
class Employee(DeclarativeBase):
@declared_attr
def __tablename__(cls):
return cls.__name__.lower()

Zart
04.06.2016
18:09:49
2.7
лямбды в тройке такие же как в двойке, санс новые правила передачи аргументов

Марк
04.06.2016
18:14:01
Лямбды в такой последовательности похожи на for k.v in d

Viktor
04.06.2016
18:16:16
Немного странный вопрос, и я не пойму как гуглить.
class Foo:
def inherited_from_name(self):
return None
class Bar(Foo):
def inherited_from_name(self):
return 'Foo'
class Baz(Bar):
def inherited_from_name(self):
return 'Bar'
Как этот inherited_from_name сделать динамическим?