gentoo.ru
python
python@conference.gentoo.ru
Вторник, 6 июля 2010< ^ >
Конфигурация комнаты
Участники комнаты

GMT+4
Конфигурация комнаты
Участники комнаты
[19:50:27] Конфигурация комнаты изменилась
[19:50:33] <krigstask> Завтра посмотрю, как причешешь
[19:50:36] <qnikst> ок
[19:50:48] krigstask вышел(а) из комнаты
[19:50:55] <qnikst> pylint мне сказал что я глуп
[19:51:25] <maksbotan> сколько?
[19:51:45] reonaydo вошёл(а) в комнату
[19:52:47] <qnikst> да ваще там ппц он наругался
[19:53:03] <maksbotan> какой рейтинг?
[19:53:10] <maksbotan> мне интересны циферки
[19:54:01] <qnikst> 1.73/10
[19:54:09] <qnikst> но у меня не импортнулись модули
[19:54:25] <qnikst> щас буду смотреть куда include path писать
[19:54:47] <maksbotan> -7.50/10
[19:54:48] <maksbotan> :'(
[19:54:57] <qnikst> гы
[19:56:09] <reonaydo> хорошая пиписькомерка :-)
[19:56:46] <maksbotan> хаха
[19:56:56] <maksbotan> а на других файлах 4.75/10
[19:57:50] <qnikst> даваще
[19:57:55] <qnikst> кстати  slint клёвый
[19:57:56] <reonaydo> C: 11:ISPConfig: Missing docstring <- это оно о чём? О_о
[19:58:07] <reonaydo> pylint етот
[19:58:14] <maksbotan> reonaydo: Нуэ
[19:58:17] <qnikst> я у себя n багов отловил, думаю с pylint так же выйде
[19:58:20] <maksbotan> нету докстринга
[19:58:34] <reonaydo> ну перевести я перевёл :-)
[19:58:50] <qnikst> добавь """TODO: add docstring"""
[19:58:52] <qnikst> =)
[19:58:54] <maksbotan> ты не знаешь что такое докстринг?
[19:58:57] <qnikst> после def method:
[19:59:11] reonaydo программит методом реверс - энжиниринга
[19:59:14] <qnikst> кстати как добавить include path?
[19:59:31] <qnikst> import path
[19:59:39] <maksbotan> qnikst: куда добавить?
[20:00:22] <reonaydo> типа нужно какую-то фигню в тройных кавычках написать?
[20:00:44] <qnikst> reonaydo, ага
[20:00:48] <qnikst> но лучше погугли
[20:00:49] <qnikst> =)
[20:01:10] <maksbotan> reonaydo: сразу после объявления функции
[20:01:14] <qnikst> там описание функции, которое будет в генерации документации вылезать и в foo.__doc__
[20:01:28] <qnikst> наверняка какие-то правила есть, но я их не знаю
[20:01:29] <reonaydo> ясно, спасибо
[20:02:31] <qnikst> ещё вопрос тупой, но как строки переносить?
[20:02:49] <maksbotan> qnikst: я через 20-мин отвечу
[20:02:52] <maksbotan> или погугли
[20:04:23] <qnikst> \?
[20:06:00] <reonaydo> qnikst: после запятой переноси
[20:06:28] <qnikst> там много вложенных методов, по зпт не удобно
[20:06:49] <qnikst> to few public methods это 5
[20:06:59] <reonaydo> тогда \ вроде
[20:07:46] <reonaydo> странный этот тест какой-то
[20:07:53] <reonaydo> вот чем ему не нравится
[20:07:54] <reonaydo> C:228: Invalid name "elem" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
[20:08:05] <reonaydo> elem = etree.Element('doc')
[20:08:22] <reonaydo> зачем с большой буквы обзывать
[20:08:43] <qnikst> принято
[20:08:55] <qnikst> в яве тоже принято с большой и camelcase
[20:09:01] <reonaydo> что именно принято?
[20:09:01] <qnikst> а модули маленькими
[20:09:08] <qnikst> название класса с большой буквы
[20:09:16] <qnikst> чтобы понятно было, что это класс
[20:09:17] <reonaydo> это ж просто переменная
[20:09:22] <qnikst> аа
[20:09:25] <qnikst> странно
[20:09:49] <reonaydo> просто создаю экземпляр и присваиваю его переменной elem
[20:10:08] <reonaydo> а классы с большой буквы я ещё после явы привык создавать
[20:11:35] <qnikst> видимо придётся и переменные с большой (
[20:11:41] <qnikst> глупо как-то
[20:15:32] <reonaydo> такс, до 7 баллов дошёл, только за счёт docsting ^_^
[20:15:51] <qnikst> хм чем sys.path.append от sys.path insert отличается
[20:16:08] <reonaydo> sys.path = список
[20:16:11] <qnikst> на stackoferflow сказали что его юзать надо чтобы pylint модули видел
[20:16:34] <reonaydo> append в конец добавляет элемент, insert после указанного
[20:17:14] <qnikst> ясно
[20:17:23] <qnikst> хм 4.51 уже лучше
[20:21:02] <maksbotan> =)
[20:21:08] <reonaydo> хм, а вот это что
R: 58:Log.ustr: Method could be a function
[20:21:21] <maksbotan> ктото уже говорил
[20:21:35] <maksbotan> reonaydo: это значит что метод не использует другие члены класса
[20:21:42] <maksbotan> то есть не обращается к self
[20:21:51] <maksbotan> и поэтому может быть тупо функцией
[20:21:56] <reonaydo> и шо в этом плохошо?
[20:22:23] <maksbotan> Нуэ
[20:22:40] <reonaydo> то есть убрать ему self ?
[20:23:12] <maksbotan> не
[20:23:21] <maksbotan> вынести его из класса
[20:23:32] <reonaydo> ну, это не интересно
[20:23:44] <reonaydo> лучше научить его делать что-то с классом ^_^
[20:24:17] <maksbotan> хаха
[20:24:47] <reonaydo> а что скажешь про
[01:08:10] <reonaydo> C:228: Invalid name "elem" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
[01:08:21] <reonaydo> elem = etree.Element('doc')
[20:24:49] <reonaydo> ?
[20:25:12] <reonaydo> зачем он хочет для переменной заглавную букву?
[20:25:40] maksbotan написал адский декоратор
[20:25:44] <qnikst> 7.28 ы
[20:25:52] <maksbotan> reonaydo: /r/ кусок кода
[20:26:08] <maksbotan> qnikst: поздравляю
[20:26:09] <qnikst> сделай его @staticmethod
[20:26:43] <qnikst> кстати он только некоторые переменные хочет с заглавной, я его не понимаю
[20:27:38] <qnikst> pylint --help-msg=Code
[20:27:50] <reonaydo> http://pastebin.ca/1895543
[20:30:01] <maksbotan> reonaydo: http://pylint-messages.wikidot.com/messages:c0103
[20:30:37] <maksbotan> он считает что константа должна начинаться с большой буквы
[20:31:00] <reonaydo> а как ему обьяснить, что это не константа?
[20:31:06] <maksbotan> ну
[20:31:09] <qnikst> хехе
[20:31:14] <maksbotan> использовать её не как константу
[20:31:18] <qnikst> изменить её где-то
[20:31:18] <reonaydo> типа, раз не меняется за весь код, значит, констата?
[20:31:25] <reonaydo> странная логика
[20:31:26] <maksbotan> походу да
[20:31:32] <maksbotan> ничего не странная
[20:32:06] <qnikst> странная
[20:32:07] <qnikst> =)
[20:32:21] <maksbotan> почиму?
[20:33:27] <reonaydo> константа в виде экземпляра класса - это само по себе странно
[20:34:09] <reonaydo> к тому же в виде экземпляра, у которого меняются внутренние параметры
[20:35:28] <qnikst> блин не импортит
[20:37:12] <maksbotan> reonaydo: а ты что там такое пишешь?
[20:37:13] <qnikst> урааа
[20:37:17] <qnikst> импортит
[20:37:35] <maksbotan> как?
[20:37:51] <reonaydo> maksbotan: это по работе. Так что что оно делает, неважно ^_^
[20:38:02] <maksbotan> хаха
[20:38:30] <reonaydo> во, придумал, корпоративная тайна!
[20:38:42] <qnikst> --init-hook
[20:38:49] <qnikst> pylint --init-hook='sys.path.insert(1,"lib")' bin/stsite
[20:39:10] <qnikst> разбирает xml
[20:39:18] <qnikst> минимум
[20:39:23] <reonaydo> qnikst: а sys.path.append не канало?
[20:39:29] <qnikst> неа
[20:39:32] <reonaydo> странно
[20:39:36] <qnikst> ага
[20:39:41] <reonaydo> ему должно быть пофиг в каком порядке
[20:39:54] <maksbotan> qnikst: а может даже и генерирует
[20:40:50] <qnikst> ИКСАМЭЭЭЛЬ
[20:40:52] <qnikst> или как там
[20:47:01] <qnikst> в питоне как я понял не приняты статические классы?
[20:47:22] <maksbotan> что это?
[20:48:22] <qnikst> забей
[20:48:23] <qnikst> =)
[20:49:32] <maksbotan> qnikst: пересобери и проверь снова
[20:49:35] <maksbotan> если хочешь
[20:49:43] <maksbotan> я добавил несколько няшек
[20:49:57] <qnikst> попозже
[20:49:58] <qnikst> =)
[20:50:01] <maksbotan> ок
[20:51:30] <qnikst> хм он в минуса уходит, если не скомпилируется
[20:51:45] <maksbotan> ?
[20:54:11] <qnikst> ну у тебя было -1.2
[20:54:21] <qnikst> у меня получилось так только если не собиралось
[20:54:33] <maksbotan> что не собиралось?
[20:55:16] <maksbotan> там у меня тоже хуита с импортами
[20:55:26] <maksbotan> поэтому пайлинт считает прожку нерабочей
[20:57:43] <qnikst> 8.75
[20:57:46] <qnikst> ss
[20:57:48] <qnikst> бывает
[20:58:01] <qnikst> ми пошёл к следующейму файлу
[20:58:30] <qnikst> 0.22 ему не понравился singleton
[20:58:59] <maksbotan> у тебя много ошибок line too long?
[21:00:54] <maksbotan> хаха
[21:01:01] <maksbotan> setup.py: 0.00/10
[21:03:19] <qnikst> достаточно
[21:03:26] <qnikst> и я щас не знаю как править
[21:08:23] <qnikst> 07-06 21:09 <== <qnikst> хм.. как сделать ссылку на функцию определенную в       │
[21:08:24] <qnikst>                 модуле из класса этого модуля      
[21:08:30] <qnikst> типа так
[21:08:53] <maksbotan> а зачем?
[21:09:08] <qnikst> class ActionCaller:
    actions = {'foo':???}
def foo_action(params):
[21:09:23] <qnikst> ну можно через классы
[21:09:32] <qnikst> function classes или как там они зовутся
[21:09:47] <qnikst> забыл о них
[21:10:01] <qnikst> method objects
[21:17:00] reonaydo вышел(а) из комнаты
[21:22:10] <qnikst> как депрекэйшн ворнинг выкидывается правильно?
[21:22:46] <maksbotan> э, что?
[21:24:23] <qnikst> устаревшие методы
[21:24:32] <qnikst> мне лень сразу удалять, ибо используется много где
[21:24:37] <qnikst> а рефакторить нечем
[21:24:43] <qnikst> http://code.activestate.com/recipes/391367-deprecated/
[21:24:44] <qnikst> вот
[21:24:58] <qnikst> только я пока не понимаю как оно работает )
[21:26:22] <qnikst> в @foo можно любую свою функцию вместо foo загнать?
[21:26:42] <maksbotan> дада
[21:26:57] <maksbotan> http://habrahabr.ru/blogs/python/46306/
[22:02:10] maksbotan вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!