Этого треда уже нет.
Это копия, сохраненная 24 января 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
649 Кб, 768x1049
#2 #608212
бамп
#3 #608220
Я заебался. Создаю листы вместо классов, и потом ебусь с s[0], s[3], s[2]+s[1], постоянно забывая что в этих индексах должно лежать. Почему не делаю классами? Потому что кода больше получится. Словарем тоже уныло, придется ключи прописывать.
#5 #608250
>>608244
Это что, микрокласс такой что ли?

>Point = namedtuple('Point', ['x', 'y'])



мимонубло
#6 #608266
>>608244
Лишняя строчка для объявления.
7 Кб, 360x340
#7 #608275
Моя программа должна задавать пользователю вопросы и принимать решение на основе ответов, поступающих от него. Логика выглядит примерно как на картинке. Часть ответов нужно сохранять. Как можно реализовать хранение текущего состояния в объектно-ориентированном ЯП (Python)?

- Писать по классу на каждое состояние очень трудоемко, к тому же остаётся проблема сохранения ответов.
- Один класс, являющийся конечным автоматом? Слишком громоздко, ведь в нём придётся иметь поля для совершенно непересекающихся ветвей.
- Отдельные классы для каждой темы с логикой переходов - слишком запутанно

Сейчас решение принимается на основе нахождения в ответах пользователя определённых слов, но потом, вероятно, будет задействовано машинное обучение. Получается, нужно отделить логику переходов от хранения данных, специфичных для определённой темы.
#9 #608293
>>608275
передавать параметром в функцию или через self
#10 #608299
>>607994

>Ну то есть размер задаётся через raw_input сколько столбцов и сколько строчек, а потом создаётся матрица, заполненная нулями


http://ideone.com/ULvDLT ?
2774 Кб, Webm
#11 #608307
Смотрите-ка, почаны. Вкатился в питон полчаса назад, ничего не шарю в программировании, по образованию менеджер.
Я успешен?
#12 #608316
>>608307
Да, теперь ты сможешь зарабатывать по 150 тысяч в месяц.
#13 #608326
>>608307
Но сначала удали пробелы перед скобочками в функциях
#14 #608384
>>608307
А также смени тему
#15 #608389
>>608307
Всё правильно делаешь, Кирилл.
#16 #608405
а можно в методах дефолтные аргументы? что ему не нравится?
пытающийся хеллоуворлдщик
#17 #608406
>>608266
Тебе байтов шалко, что ли?
47 Кб, 890x476
#18 #608407
>>608405
пикча не загрузилась
#19 #608409
>>608407
Лол, замазал своё имя которое нахуй никому не впёрлось. =None делай, а в теле функции if ... is None: или x = x or self.x в зависимости от возможных значений аргумента.
#20 #608413
>>608409
не мог бы написать? не совсем понимаю
все тот же пытающийся хеллоуворлдщик
#21 #608417
>>608413
def yoba(self, x=None):
....if x is None:
........x = self.x
или
....x = x or self.x
40 Кб, 690x666
#22 #608428
>>608417
Вай вай вай, спасиб, няш. Заработало! Раз уж есть тут такие люди, буду захаживать сюда почаще
все тот же пытающийся хеллоуворлдщик
6 Кб, 301x142
#23 #608435
>>608407
Дефолтные аргументы создаются в момент объявления класса и тогда никакого self не существует.
Если бы это были поля класса то прокатило бы
#24 #608438
>>608428
что за IDE?
#25 #608442
>>608438
Похоже на вижуал от мелкомягких
#26 #608445
Аноны, начал изучать пайтон неделю назад, только вот закончил книгу Саммерфилда. Расскажите, пожалуйста, про вкат в профессию. Желательно не в веб.
46 Кб, 859x634
#27 #608454
>>608438
>>608442
да, так и есть - MS VS 2015 + Python Tools for Visual Studio.
>>608435
ага, вроде понял, спасиб.
#28 #608459
>>608445
ну идешь в ближайший супермаркет, и спрашиваешь, нужны ли им грузчики.
#29 #608463
>>608445
Какую професию?
#30 #608465
>>608459
Ты не смешной.
>>608463
Питон-программист.
#31 #608468
>>608465

>Питон-программист.



Пайтон для души, не для заработка.
#32 #608470
>>608468
Говори за себя.
37 Кб, 500x428
#33 #608476
Посоны, для вкатывания в питон, обязательно Лутза читать с учетом, что уже имеешь небольшой опыт в других ЯП (C++)?
Просто слышал, что там воды налито на 1к+ страниц и повторяется одно и то же несколько раз. Так ли это? Если да, то посоветуйте чего-нибудь ещё. inb4: документацию
#36 #608485
>>608482
Тройка не нужна это нестабильная неудачная экспериментальная версия. Учи двойку потом перейдешь на четверку которая будет полностью совместима с двойкой.
#37 #608486
>>608476
dive into, как надоест, странице к 300, так делай уже то, что надо, а если что документация + стаковерфлоу.
54 Кб, 485x325
#38 #608488
>>608485

>Тройка не нужна это нестабильная неудачная экспериментальная версия. Учи двойку потом перейдешь на четверку которая будет полностью совместима с двойкой.

#39 #608490
>>608476

>повторяется одно и то же несколько раз


Это, чтобы такой уёбок тупорылый как ты понял материал гарантированно и не ебал мозги анону элементарщиной впоследствии.
#40 #608499
Кто-нибудь Лутца проходил полностью? Я на страницах 500х как бросил год назад, так и не возвращался пока)
#41 #608501
>>608499

>)


И отсюда тоже съеби, плес.
#42 #608508
>>608501

>плес



В ротешник тебе съебал.
#43 #608511
>>608508
Поссал на тебя, выблядок.
#44 #608512
>>608511
1101000010011100110100001011000011010000101111001101000010111010110100011000001100100000110100001011010111010000101100011101000010110000110100001011101100100001
#45 #608530
>>608470
Рынок труда говорит за меня
#46 #608532
>>608485
Если тройка не совместима с двойкой, то с чего ты взял, что четвёрка будет совместима?
#47 #608533
>>608532
Потому что 95% используют двойка. Тройка провал. Придется выпустить четверку совместимую с двойкой.
Такая история была с php они забили на php6 и выпустили php7
#48 #608538
>>608532
Это местный тролль, не обращай внимания. У него ынтырпрайз и продакшын на 2.6.

Гвидо говорил что никогда не вернет совместимость с двойкой.
37 Кб, 860x650
#49 #608539
>>608538
пруфс. и вообще гнида нам не указ. надо будет форкнем двойку.
#50 #608540
>>608538
Как там jython и ironpython, кстати тройку завезли? А в pypy?
А во всяких встроенные питоны в vim, blender, cinema 4d, maya?
#53 #608571
Посоны, посоветуйте годный редактор. До этого времени использовал ноутпад++, ибо сказали, что он отлично подойдет для новичков в кодинге. Более-менее разбрался. На какой стул теперь сесть? Или остаться сидеть на н++?
#54 #608575
>>608571
PyCharm же.
#55 #608581
>>608571
https://www.youtube.com/watch?v=Y7aEiVwBAdk
Или старый добрый саблайм.
#56 #608585
>>608575
>>608581
Ок, спс
#57 #608588
Как перейти от книжечек к собственно кодингу?
Из тем где я плаваю осталась пара моментов, но туда-сюда вроде как всё понятно.
А что писать не знаю. Аккадемические физзбиззы уже не качают, да и после sicp они убогие какие-то. А прикладного не знаю - мне самому тупо ничего не нужно. Есть где-нибудь список маст райт апликейшнсов для нубов?
#58 #608590
>>608540
В pypy вроде 3.2. Но всё равно это уже старьё и не нужно.
#59 #608591
>>608543

> 2014-01-03

#61 #608597
#62 #608598
>>608595
Потешно, но мало как-то. Для погонять пробелы сойдёт думаю, а вот для реальных идей по реальным программам не очень.
Спасибо тем не менее, погоняю.
#63 #608599
>>608598
https://projecteuler.net/ погоняй ещё интересные задачки есть
#64 #608601
>>608599
Гонял уже. Хотя конечно там ещё решать и решать.

В принципе я хотел что-нибудь типа такого https://pythonspot.com/ ещё получить, может не в формате туториалов, а просто заданий, но пока и это сгодится.
#65 #608606
Надо запилить клон http://sily.co/ только для русни.
Как вам идея?
#66 #608652
>>608076 (OP)
Вопрос по checkio
Как выполнить текст написанного модуля, чтобы посмотреть результаты assert`ов?
#67 #608658
>>608652
ХАН СОЛО УМРЕТ В КОНЦЕ
#68 #608662
>>608606
Заебок
#69 #608664
>>608662
Оно на вебсокетах сделано наверное на tornado можно запилить. Или что там ещё есть?
#70 #608665
>>608664
Не знаю, я ноджеесник, случайно сюда забрел
#71 #608693
>>608658
БляДь, даже в Питонотреде ЗВ проспойлерили.
#72 #608702
>>608693
нахуй хана соло ящитаю
вообще весь этот джедаемайдан в сраку
#73 #608732
Джанговопрос
У меня есть модель Section и N моделей XyzTask в которых Section указана как ForeignKey. Как из Section получить доступ к объединенному списку всех моделeй? Поставить одинаковое related_name везде?
#74 #608736
>>608732
Че?
Section.objects.get(pk=1).xyztask_set
Это?
#75 #608737
>>608732
Ну или если related_name задан для ForeignKey то так и будет называться свойство у объекта Section.
По-умолчанию будет называться xyztask_set
#76 #608741
>>608736
>>608737

Моделей несколько. То есть мне нужно при запросе new_section.task_set получить сразу все объекты из ATask, BTask и так далее
#77 #608745
>>608741
Мне кажется тебе сделовало бы создать модель Task, а у неё поле task_type = blabla(..choices=..)
И, если тебе так удобно, несколько прокси моделей, со своими менеджерами и т.п.
#78 #608746
>>608741
И тогда ты мог бы их вместе выборку делать
#79 #608749
Как сделать универсальную обёртку для кнопок в GUI?

Есть:

def Ent_button_clicked(self):
value = self.lineEdit.text()
reforged = filter(value, self.allowed)
self.label.setText(reforged)

Вангую нужно передавать lineEdit и label, но как выглядить должно не понимаю.
#80 #608751
>>608749
Алсо могут быть моменты, когда будет не 1 Line Edit, а два и лейбла тоже собственно 2. Как это предусмотреть?
34 Кб, 640x426
#81 #608753
>>608745
хм, да. Можно сделать одну общую модель с ChoiceField, и в зависимости от выбора реализовать разную логику в save().
Спасибо, братишка.
#82 #608782
Почему на одной странице не выводятся два разных представления ListVew ? (Django)
#83 #608788
#84 #608795
>>608788

>\t


да кароч я не понимаю как вывести данные из разных моделей на главной странице через {% for %} в разных местах сайта (т-есть один for вверху сайта и один внизу, почему то у меня только один for работает)
#85 #608796
>>608795
А как ты это делаешь?
Один основной список у тебя object_list
Второй ты можешь подсунуть через get_context_data см. пример https://docs.djangoproject.com/en/1.9/ref/class-based-views/generic-display/#listview
вместо context['now'] = timezone.now()
сделай context['list2'] = Model2.objects.all()
#86 #608798
>>608795
Вообще используй простую вьюшку на функции. Так проще имхо. Особенно если тебе пагинация всякая не нужна.
#87 #608806
>>608798
Пагинация нужна, сайт со статьями, нужен фор чтобы выводил список категорий на главной и фор для списка статей

>>608796
через get_context_data работает, но способ какой то странный, я думал такое можно по другому сделать
#88 #608808
>>608806
нормальный способ
#89 #608812
Как в pyqt сделать кнопку произвольной формы, шестиугольник например?
#90 #608814
>>608806

>я думал такое можно по другому сделать


да тут тоже новечки как бы обетают)
31 Кб, 545x231
#91 #608816
>>608808
Вообщем такая штука вышла

а если мне понадобиться еще какую нибудь информацию вывести на главную еще из другой модели
34 Кб, 485x231
#92 #608818
>>608816
Забыл в коде переименовать ArticleListView на IndexView. Исправил
#93 #608820
>>608816
Так же в контекст добавишь.
#94 #608821
>>608782
Такую хуйню лучше делать на фронтэнде.
Пилишь API и каким нибудь ангуляром берешь из него 2 этих списка
#95 #608824
>>608821
Угу чтобы вместо одного запроса несколько было.
#96 #608825
>>608821
я нихуя не знаю всё то что ты перечислил
#97 #608854
>>608825
шо тi тут делаєш тогда?
#98 #608856
Анон, такой вопрос: есть ли не сильно красноглазые способы нарисовать питоном в малине (RPi) на экране некие графики, кнопочки, и т.п. GUI? Хорошо бы, чтобы это ещё и нажималось тачскрином.

Скиллы в питоне - освоенное веб-радио на малине с энкодерами (громкость и переключение станций) и 1602 дисплеем. Сейчас хочется 7"-экран и некий гуй к некоей железяке, но не знаю с чего начинать вскрывать тему. Если что, сильно зарываться в системное программирование под линухом желания нет никакого, верю что есть способы проще.
#99 #608857
#100 #608860
>>608857
Спасибо.
Тормозить на малине не будет?
#101 #608869
Что лучше учить: Питон, Джава или Руби?
781 Кб, 1302x1080
#102 #608880
>>608854
пытаюсь сайт запилить
#103 #608919
>>608880

>пытаюсь сайт запилить


И что, это flask? Или другой веб фреймворк для питона?
#104 #608920
>>608880
Хороший годный сайт, тоже подобный думаю сделать.
#105 #608922
>>608860
Да не должно.
#106 #608927
>>608919
django это и всё
#107 #608947
Опытный анон подскажи это нормально делать например self.huy.pizda.zhopa.pokakat(), т.е обращаться к полю объекта, который сам является полем другого объекта, который ... ну ты понял.
Смотрел скринкасты дяди боба и в одной из них он сказал, что мол так делать не хорошо, мол мы слишком много предположений делаем насчет хуя (что у хуя будет пизда, а у пизды жопа и жопа может какать, а на деле может и не какать, и вообще пизды может не быть).
В питонокоде это повсеместно, вот поэтому спрашиваю.
5 Кб, 587x145
#108 #608974
>>608076 (OP)
Я даже хелло ворлд не могу осилить.
В комодо выдает такую ошибку:
"hello.py" ­Ґ пў«пҐвбп ў­гв७­Ґ© Ё«Ё ў­Ґи­Ґ©
Є®¬ ­¤®©, ЁбЇ®«­пҐ¬®© Їа®Ја ¬¬®© Ё«Ё Ї ЄҐв­л¬ д ©«®¬.
Гуглил эти символы и там в темах всплывало про PATH. Винда 10 питон 3, что не так?
#109 #608976
>>608974
Пришло время переустанавливать шиндошс
#110 #608979
>>608976
Это шутеечка такая?
#111 #608980
>>608979
Нет, это правда.
#112 #608987
>>608980
Я тебе не верю, можешь объяснить почему это именно винда, а не что то другое
#113 #608989
>>608947
Да можно всё. Программулька упадёт и всё, если полей не будет существовать. Это норма.
#114 #608990
>>608987
Не быть тебе программистом.
#115 #609012
>>608974
Ну ты же сам сказал, что проблема в пути к интерпретатору, чем тебе помочь?
#116 #609018
>>609012
Я все переставил и не помогает, в самой питоне все нормально, а в комодо эта ошибка и если пытаться открыть программу через консоль пишет инвалидный синтаксис
3 Кб, 480x176
7 Кб, 499x341
#117 #609026
>>609018
Что я делаю не так?
10 Кб, 494x339
#118 #609033
#119 #609034
>>609026
Покажи настройки komodo. Languages, environment, или как они там называются.
16 Кб, 432x372
5 Кб, 509x208
#120 #609045
>>609034
Если честно я не могу найти, так же я попробывал через vim, все равно ошибка о синтаксе.
#121 #609047
>>608922
А, совсем забыл уточнить: иксы то для pyqt нужны? Мне то они в девайсе не уперлись, опять же, только лишние тормоза и разогрев камня.
1 Кб, 476x108
#122 #609050
>>609026
Пиздос.
#123 #609052
11 Кб, 497x338
#124 #609054
>>609045
это значит что питон как то не правильно, но путь path я галочку в установке поставил и он сам прописал.
И почему в командной строке нормально открывает, а в питоне нет?
Попробую удалить и установить второй питон.
#125 #609055
Вот для жс есть кофескрипт, который превращает скобочный синтаксис в отступной. А есть препроцессор для питона, который делает синтаксис скобочным?
#126 #609058
>>609054
В интерактивном режиме интерпретатор не понимает путь к файлу, он выполняет код. Если ты хочешь запустить скрипт в интерактивном режиме, то используй

>>>import file_name


Что-то ты не с того конца начал, как мне кажется.
#127 #609066
Я правильно понимаю, что написанное на питоне приложение будет работать одинаково как в лине, так и в вроде?
#128 #609067

>в винде


Фикс.
8 Кб, 498x331
#129 #609074
>>609058
Я все по учебнику из шапки делаю.
Ни второй ни третий не работают. В PATH инсталятор сам все прописал. В чем еще может быть проблема?
#130 #609076
>>609074
Покажи свой PATH
#132 #609093
Опять весь тред в спермопроблемах.
#133 #609099
>>609080
А почему python3, а не python?
#134 #609102
>>609074
ты короче делаешь как для питон2 а надо как для питон3
#136 #609105
>>609102
Это как?
#137 #609108
>>609103
Попробуй python -V
58 Кб, 450x819
#138 #609109
>>609108
Я понимаю это прогресс. Спасибо
#139 #609115
А есть тут кто на питоне на хлеб зарабатывает?
#140 #609116
>>609109
Я имел в виду большую V, вывод версии. Но так тоже сойдет.
13 Кб, 929x605
#141 #609117
>>609116
Проблема осталась, в питоне пишет инвалид синтаксис
#142 #609118
>>609117
это ты в какой программе?
#143 #609119
>>609117
Скорее всего, просто не может найти путь. Ищи в настройках ide, где указать путь к питону. В komodo, где-то в languages->python3.
37 Кб, 673x675
#144 #609121
>>609118
komodo
>>609119
Не помогло
397 Кб, 874x744
#145 #609123
а как сделать наследование представлений в наследовании шаблонов? Как сделать чтобы представления работали в нескольких шаблонах?
397 Кб, 874x744
#146 #609124
а как сделать наследование представлений в наследовании шаблонов? Как сделать чтобы представления работали в нескольких шаблонах?
#147 #609125
>>609121
почему комодо выбрал?
#148 #609126
>>609121
Попробуй запустить python из меню, 'run shell' или что-то такое там. Может он у тебя пытается python2 запустить, которого у тебя, как я понял, нет.
#149 #609127
>>609125
В учебнике так написано было.
12 Кб, 499x330
#150 #609131
>>609126
Такого нету ни в программах, ни в папке питона. Я так понял что с питоном что то не так совсем, если он не на help print пишет invalid syntax
#151 #609132
>>609131
Я имел в виду в меню ide. Питон в порядке.
#152 #609133
>>609131
С головой у тебя не так, спермоед. Заебал. Съеби в /s/, пусть тебе там анус смажут и спермовую клизму поставят.

Хоть читай что тебе питон пишет - надо help(print)
#153 #609135
>>609133
Ну чего ты, все ж мы люди.
#154 #609137
>>609135
Все люди, один ты мудак весь тред засрал.
#155 #609138
>>609131
help('print')
13 Кб, 676x711
#156 #609140
>>609133
Соре, но мне надо что бы hello world работал, буду внимательней дальше.
>>609132
Как мне теперь сделать так что бы это работало в komodo
#157 #609143
>>608974
А в IDLE пробовал?
#158 #609145
>>609127
Сьебывай с комодо, тебе покамест IDLE нормально будет.
#159 #609148
Запаковал сорцы в exe с помощью pyinstaller, но после запуска экзешника окно мгновенно закрывается. Где проебался?
#160 #609149
>>609140
Анончик прав, ты дольше с IDE будешь разбираться, так до кода и не дойдет.
29 Кб, 502x569
22 Кб, 817x203
#161 #609150
>>609145
>>609143
Сделал все в IDLE, но он все равно пишет invalid syntax, что не так делаю?
#162 #609154
>>609150
Нахуй тебе этот питон? Го лучше дотан катнем))0
#163 #609155
>>609150
Так у тебя ничего не выйдет, бро. Обезьяний метод тупого копирования здесь не пройдет.
Попробуй для начала с терминами разобраться, понять что это за команды из книги, а уж потом берись за написание хеллоуворда.
#164 #609170
>>609155
>>609154
Ладно я понял. Съебываю со своими скринами пока не напишу хеллоу ворлд.
#165 #609188
Я правильно понимаю, что написанное на питоне приложение будет работать одинаково как в лине, так и в винде?
#166 #609190
>>609188
Да, правильно, даже на ведре, даже на айоси.
#167 #609222
Как в питоне передаются аргументы? По ссылке или по значению?

f(yoba_object.a, yoba_object.b, yoba_object.c, yoba_object.d) - получается портянка, но если передается по значению - должно меньше жрат
f(yoba_object) - четко и ясно, внутри f уже дергаем a,b,c,d. Но не сожрет ли оно овердохуя в случае большого объекта, передающегося по значению?
#168 #609224
>>609222
Мутабельные по ссылке, немутабельные по значению.
#169 #609233
>>609224
Хотя не, я ебанулся
#170 #609250
>>609233
ага, любая переменная есть ключ хеш-таблицы, вот этот ключ и передается
#171 #609323
>>609190
И его не нужно будет отдельно компилировать подо всё? Полностью кроссплатформенный, как зава?
#172 #609328
Привет, Аноны. Помогите, пожалуйста, с программой.
Суть такова:
Есть одна программа для скачивания массива однотипных файлов со странички. Мне необходимо сделать, чтобы командная строка могла изменять свои значения в динамическом режиме при том, что одновременно могут качаться несколько файлов.

Т.е. например
zzz.mp3------------[done]
xxx.mp3------------[15%]
yyy.mp3------------[23%]
qqq.mp3------------[queue]
"через пару секунд
zzz.mp3------------[done]
xxx.mp3------------[58%]
yyy.mp3------------[83%]
qqq.mp3------------[queue]

Ну и так далее. Т.е. суть в том, чтобы полной перерисовки в консоли не было, т.к. общее количество файлов исчисляется тысячами. Необходимо чтобы изменялась только пара символов.
19 Кб, 536x548
#174 #609387
>>608974
Анон, попробуй сменить вот это на русский. У меня такая же проблема была в командной строке.
#175 #609396
>>608732
GenericForeignKey
#176 #609410
>>609055
from __future__ import braces
#177 #609412
>>609124
Ты можешь сделать https://docs.djangoproject.com/en/dev/ref/templates/api/#writing-your-own-context-processors
Тогда у тебя будут вообще во всех шаблонах доступны эти категории.

Это то что ты хочешь?
#178 #609415
#179 #609416
Читаю Лутца. Где можно задачки брать, ибо только теория не конает.
#180 #609422
>>609124
Делай через template tag и не еби себе мозг.
https://docs.djangoproject.com/en/1.9/howto/custom-template-tags/
524 Кб, 900x1240
#181 #609430
>>609416
Поставь Линукс и занимайся автоматизацией всего подряд. Работай с файлами: удаляй, сортируй, шифруй, заливай через API в облака, используй рекурсивные функции, сделай в ООП-стиле или лямбдами.
#182 #609431
>>609430

> рекурсивные функции


Слишком сложно. Проще по-старинке на процедурах.
#183 #609447
>>609422
чуть мозг себе не сломал пытаясь зарегистрировать тег! Оказывается, после написания тега, НАДО ПЕРЕЗАПУСКАТЬ ЕБУЧИЙ СЕРВЕР, чтобы он заработал!!! СУКА! Полчаса думал, что ошибся где-то в написании тега.

Ну в итоге всё ок работает, спасибо
#184 #609449
Анон, как вкатиться в Tornado и прочую асинхронщину рядовому джангисту? Есть годная литература?
#185 #609465
>>609430
Так и делаю.
мимокрок
#186 #609468
>>609332
О, спасибо.
#187 #609481
>>609430
Двачую этого. А если напилишь что-то полезное хотя бы для себя - вбрасываешь на гитхаб, гитхаб на реддит в /r/linux - получаешь 20 лойсов, понтуешься перед работодателем, ведь ты уважаемый опенсорс разработчик.
#188 #609482
>>609465
тi шо делае? це дурак?
#189 #609484
>>609332
>>609468
Семен, это не то
#190 #609486
>>609484
Чего тебе не то?
#191 #609511
>>609328
Я бы сказал, что ничего разумного и простого тут не сделать. Весь текст у тебя уже запринчен в консоль, поезд ушёл, питон к нему отношения больше не имеет: на одних \r или \b далеко не уедешь.

Глянь в либу curses, может чего полезное будет.

Сложный способ:
Получить количество столбцов и строк в твоём окошке (os.popen('stty size', 'r').read(), например), а потом с print("\033[ROW;COLf" + "...") писать куда нужно и что нужно. Но это тоже немного ебанутость, но уж не на уровне видео-вывода, всё-таки. Впрочем, со скроллом там хуёво всё работать будет.

Ебанутый способ:
Ловить и трогать байтики в данных, отсылаемых видео-карте, предварительно найдя что и на что нужно изменить.

Но вообще, сама задача ниочинь, по-моему: тысячи строк в консоли всё равно не отследишь же, поэтому какая разница, когда и как оно там обновляется? Стоит перепродумать систему отображения, наверное.
#192 #609547
>>609511

> на одних \r или \b


Есть всякие escape codes которыми можно двигать курсор и прочее.
Вообще есть готовое типа https://pypi.python.org/pypi/progressbar (сам не пробовал)
#193 #609572
>>609547

>Есть всякие escape codes которыми можно двигать курсор и прочее.


Так это они и есть же, лол. Однострочное а-ля curl/scp-то элементарно, а тому анону-то тысячи строк нужно было отслеживать.
#194 #609582
Метод - это функция класса.
#195 #609585
Объект - это экземпляр класса.
Решить задачку #196 #609788
Заря экзамен, а мне надо сделать такую задачу. Поможет кто?

Дан текстовый файл, содержащий текст, выровненный по левому краю. Выровнять его по правому краю добавив в начало каждой непустой строки необходимое количество пробелов (ширину текста считать равной 50). Строки нечетной длины перед центрированием дополнять слева пробелом.
#197 #609792
>>609788
str.rjust(50)
48 Кб, 800x535
#198 #609794
Всем доброго времени суток.
Пишу парсер Л-системы.
[code]
import turtle

def drawLsystem(aTurtle, instructions, angle, distance):
for cmd in instructions:
if cmd == 'F':
aTurtle.forward(distance)
elif cmd == 'B':
aTurtle.backward(distance)
elif cmd == '+':
aTurtle.right(angle)
elif cmd == '-':
aTurtle.left(angle)

def main():
f = open('course.txt', 'r')
print f.read()
l = f.read()
t = turtle.Turtle() # create the turtle
wn = turtle.Screen()

t.up()
t.back(200)
t.down()
t.speed(9)
drawLsystem(t, '[F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F]', 60, 5)
wn.exitonclick()

main()
[/code]
Если сделать так, как написано выше, то всё работает. Если же сделать [code]drawLsystem(t, l, 60, 5)[/code], то черепашка ничего не рисует. Говорю сразу - я ничего не знаю о питоне. Объясните, пожалуйста, на пальцах, как пофиксить.
48 Кб, 800x535
#198 #609794
Всем доброго времени суток.
Пишу парсер Л-системы.
[code]
import turtle

def drawLsystem(aTurtle, instructions, angle, distance):
for cmd in instructions:
if cmd == 'F':
aTurtle.forward(distance)
elif cmd == 'B':
aTurtle.backward(distance)
elif cmd == '+':
aTurtle.right(angle)
elif cmd == '-':
aTurtle.left(angle)

def main():
f = open('course.txt', 'r')
print f.read()
l = f.read()
t = turtle.Turtle() # create the turtle
wn = turtle.Screen()

t.up()
t.back(200)
t.down()
t.speed(9)
drawLsystem(t, '[F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F,++,F,-,F,++,F,-,F,-,F,-,F,++,F,-,F]', 60, 5)
wn.exitonclick()

main()
[/code]
Если сделать так, как написано выше, то всё работает. Если же сделать [code]drawLsystem(t, l, 60, 5)[/code], то черепашка ничего не рисует. Говорю сразу - я ничего не знаю о питоне. Объясните, пожалуйста, на пальцах, как пофиксить.
827 Кб, 1000x921
#199 #609798
>>609794
Куклогоспода, пост скрылся из-за фрагмента кода.
#200 #609803
>>609798
На пасту. Кодокостыль никто не ставит.
#201 #609805
>>609803
Не понял.
#202 #609807
>>609803
На пастебин что ли залить?
#203 #609809
Поясните за необходимость работы по никсами.
Работаю на питоне довольно давно, но в основном просто решаю контесты на кодфорцес и изучаю алгоритмы.
Слышал, что для более продвинутой работы необходимо работать под прыщами или хотя бы в виртуалке.
Зачем? Какие профиты? У меня даже pip под openSuse не стал устанавливать пакеты (зато трафик жрал исправно), а на ubuntu не смог в proxy. Возникали какие-то проблемы с кодировками и прочим, чего на Win7-10 сроду не было.
Тем не менее в большистве вакансий требуется знанием *nix
#204 #609811
>>609794
Залил на всякий случай: http://pastebin.com/D9pKbAa5
#205 #609814
>>609809

>Тем не менее в большистве вакансий требуется знанием *nix


Потому что питон - язык бекенда. а система бекенда - никсы.
#206 #609816
>>609814
блин, почему то сам сразу не допёр до этого.
эх, жаль что на нём не пишут gui приложения по win. приходится учить с#
#207 #609818
>>609816
Не знаю как гуй для вин, а гуй и туй для линукса пишут многие. В том числе я
#208 #609819
>>609818
а кто им пользоваться будет? пара коллег?
к тому же привязка Qt5 реализована не очень удобно
#209 #609820
>>609511
Спасибо, Анон. Ты классный.
Ебанутый способ оценил. Хоть и изучал в универе сишку и ASM, до такого я бы не додумался никогда.
Похоже реально самый простой и логичный способ - с помощью curses. Спасибо, я совсем про него забыл.
#210 #609822
>>609794
Покажи содержимое файла 'course.txt'.
#212 #609833
>>609819
А к гтк - вполне удобно. Я каждый день пользуюсь gajim, например, jabber-клиент написанный на питоне. wicd-curses, консольная морда для вафли. Дропбоксовый клиент тоже питон. Deluge - торрент-клиент на питоне. Все есть в дефолтных репах. Какие пара коллег? Если пройтись по rdepends python-gtk2, python-gi, python3-gi то там навалом всего декстопного написано.
2 Кб, 277x229
#213 #609834
>>609825
У меня все рисуется. Посмотри кодировку файла. Зачем нужны запятые и скобки, если они игнорируются?
#214 #609839
>>609834

> Посмотри кодировку файла.


Как это под убунту сделать?

> Зачем нужны запятые и скобки, если они игнорируются?


Результат работы другой программы, написанной на прологе. Это мой курсач по логическому программированию.
#215 #609840
>>609834
Заработало! Скопировал с пастебина в файл и вуаля!
#216 #609841
Пацаны, а как вайпалку написать?
#217 #609844
>>609840
А я вот подумал, что это из-за того, что f.read() дважды вызывается. Из-за этого l должна быть пустой.
1 Кб, 366x247
#218 #609845
>>609794
Я конечно вижу что у вас тут уже магическим образом все из нерабочего превратилось в рабочее, но:

>f = open('course.txt', 'r')


>print f.read()


>l = f.read()



Читаем то дважды, и при втором чтении в l не запишется нихуя.
#219 #609846
>>609840
Нет, опять не работает.
>>609834
Кодировку глянул: us-ascii
#220 #609847
>>609846

>Нет, опять не работает.


Скопируй еще раз. Шутка. Убери print f.read()
51 Кб, 467x700
#221 #609848
>>609844
>>609845
Вон оно как. Спасибо, аноны! Простите уж нуба.
#222 #609849
>>609788
Бамп
#223 #609875
>>609849
Если предыдущий ответ тебя не устроил, то как тебе такой вариант?
http://ideone.com/UAjXII
#224 #609880
>>609875
Вот теперь спасибо
#225 #609882
>>609819

> к тому же привязка Qt5 реализована не очень удобно


Поподробнее отсюда.
>>609816

> жаль что на нём не пишут gui приложения по win


Пишут конечно же.
36 Кб, 303x404
#226 #609884
>>609848

> доброго времени суток


> Куклогоспода


> Заработало!


> Простите уж нуба

#227 #609889
>>608220

>листы вместо классов


Чего?

>постоянно забывая что в этих индексах должно лежать


Што?
#228 #609893
В Gtk Settings можно как-то динамически добавлять ключ-значение? Пиздос какой-то, в доках нихуя. Обшарпал гитхаб, тоже нихуя. У всех настройки предопределены в схеме, никакой динамики, тут сет, там гет и все, а мне надо чтобы, так сказать, создавать и сохранят уже по ходу исполнения программы. Заранее неизвестно сколько их будет. Как вообще такое хранят в Gtk? В отдельный файл? Тогда нахуй этот settings нужен если настройки приходится хранит в разных местах. Простите за сумбур.
#229 #609897
>>609893

>сохранять


>хранить


я еще неграмотный уебок
12 Кб, 374x201
#230 #609898
>>609332
>>609511
Поехавшие школьники

>>609328
Смотри на пик. Тебе нужно просто вызвать os.system('clear')
#231 #609900
Пиздец вы тут поехавшие все. Почему в документацию не смотрите?
#232 #609903
>>609898

>тред для принтов


совсем ебанулся
#233 #609905
>>609903
Первый попавшийся пример. Я вообще в питон только вкатился, когда увидел вопрос >>609328. Еще вопросы будут?
#235 #609910
>>609908
Теперь понятно откуда тут вот такие посты >>609511
#236 #609934
>>609328
Может я чего не понял но
$ touch xyz.txt
$ downloader > xyz.txt
....
python open(....)
readline(....

Не?
#237 #609991
>>609898
Вариант говно. Мне не нужно очищать всю командную строку.
Если бы было 3 строки, то таким образом еще было бы терпимо это реализовать, стирая и заново отображая строки, а если их 500?
#238 #609999
>>609991
А у тебя 500 строк на экран поместится?
#239 #610002
>>609934
Извини, не понял, причем здесь импорт и инпут из/в файл?
#240 #610033
>>610002
Ну тебе прога список даёт слишком большой прямо в консоль
Не лучше ли его сохранить, а потом перебрать автоматом что нужно
#241 #610081
>>608076 (OP)
Поясните за питон?
Для чего его юзают какие-то крупные предприятия и корпорации?
Т.е., если я его выучу и пойду на работу, что я на нём буду писать? И насколько он сложный в освоении?
#242 #610084
>>609999
Скроллинг же.
#243 #610088
>>610081
Ну я говнокодер ещё тот и честно говоря вообще не кодер а "бизнес инженер", да ещё и не в корпорации - а в консалтинге, кодить нихуя не умел и не умею хоть в студенчестве сайты пилил на пехопе.
Короче: Мне приходит гора статистики наших клиентов, примерно однотипная, в экселе. Я её парсю и считаю не слишком заумной формулой показатели, которые передаются далее. Можно все сделать экселем вообще, хоть и будет уходить пара дней на это, но мне как-то скучно так. Да и вручную проверять ебучую тучу условно связанных ячеек мне лень было бы. Вот этим и занимаюсь.

С корпоративными кодерами часто болтаю, но у них скукота: актив директори и куча мс поебеней из коробки типа телефонная книга на все 30 тыс персонала разумеется с распихиванием по категориям допуска, ибо начальнику цеха говнопереработки мухосранской дочки нахуй не положено знать номер генерала или директора по hr. Ну и 1с конечно. Как по мне скукота все это, особенно если влиять нужно в уже готовом продукте и шаг влево-шаг вправо - никанон, зачем мы эту хуйню тогда купили, насколько оно секюрно и тд и тп.
#244 #610089
>>610088
О, может проконсультируешь меня? Я программист. Сейчас вебом занимаюсь, но хочу уйти в анализ данных и потом открыть свой бизнес. Есть смысл получать вышку по экономике (подумываю над специальностью Статистика в Высшей Школе Экономики)? Мне 21 год, закончу вышку я самое раннее в 26 лет. Может если я грамотно потрачу время, то смогу всё изучить самостоятельно и даже раньше?
#245 #610096
>>610084
При скроллинге все равно отображается только часть строк. Очистил экран, отрисовал другие строки. Ты никогда не отображаешь все 500 строк.
#246 #610106
>>610089
Не думаю что смогу быть полезен. Не знаю стоит ли идти в универ. Без универа в корпорации путь заказан 99%, в подрядчики возможно тоже ибо я знаю очень много подрядчиков которые просто свою жирную тему вывели в аутсорсинг непосредственно из этой же самой компании. Есть конечно и исключения. Пропихивать новый продукт в корпорации не особо получится даже будь он сто раз полезным. Ибо западных компаний готовых тратить на это бабло и имеющих смелость что-то внедрять не понарошку или из-под палки надзорных органов почти не осталось, а отечественные компании - днище пидорское бюрократизированное.
Короче говоря если чего и пилить - то я бы сразу рекомендовал ориентироваться на западный рынок, но тут сам представляешь сколько подводных камней.
А так.. Ну вот эта хрень с моей статистикой продаётся только потому что она идёт комплектом с целым пакетом услуг для реальной деятельности. Без этого думаю нахуй бы никого не ебали эти цифры.
Что до анализа данных тут я тоже не специалист, но сто пудов видел на курсере и юдеми пару недель назад кучку курсов по этому.

Эконом вышка прикольная, сам её получал бонусом к инженерке за пару лет заочки, мне понравилось но реального применения не нашёл а ещё её в 9/10 случаев может заменить кинцо на ютубе how economics works + по мере надобности гугление
#247 #610119
Как лучше организовать управление десятками акков вконтакте? Я думаю через селениум как обычно придется все делать, ведь с апи такое не прокатит. Может у кого был опыт вообще с этим
#248 #610133
>>610096>>609898
Ты бы хоть прочитал вопрос нормально, умник.

1. 'clear' нихуя не очищает экран, а просто сдвигает его вниз.
2. Тот анон специально просил изменять лишь несколько символов, а не перерисовывать весь экран.

Первая проблема решается заменой clear на printf "\033c", вот только хоть скроллинг и будет, после каждой перерисовки оно будет сбрасывать в конец, так что ты не сможешь за одним файлом следить, не держка скроллбар рукой.

Вторую проблему можно решить, наверное, въебав идиотские vim-like странички, тогда пересовывать нужно будет лишь одну страницу, что, вроде бы, не так плохо.

Но лучше было бы в каком-нибудь гуе набросать 3 виджета и размножить их.
#249 #610158
Как заставить py2exe запихнуть PySide'овские DLL'ки в какую-нибудь папку так, чтобы и сам PySide их потом нашёл?
qt.conf что-то не работает. Там какая-то странная функций загрузки этого qt.conf: он сначала проверяет, нет ли дефолтных путей, и только потом ищет этот файл. При этом если дефолтного пути к любой из категорий (binaries, plugins и т.д.) нет, то из функции выходит, даже не дойдя до стадии поиска qt.conf...
#250 #610159
>>610084
Ты изначально выбрал не те средства для решения свей задачи + отображать 500 строк в консоли. Кому они там нужны? Ты когда-нибудь пытался разобраться в 500 строках информации?
#251 #610161
>>610133

>Ты бы хоть прочитал вопрос нормально, умник.


>изменять лишь несколько символов, а не перерисовывать весь экран.


Все топовые программы, которые имеют ввод в консоль пользуются этим способом, а вы тут велосипед с треугольными колесами решили изобрести.
#252 #610163
>>610161
Какая разница, кто там что использует? Ему-то нужно было другое. Я сразу и написал в своём посте, что задача фигня, нужно переделывать, но это не значит, что можно отвечать на другой вопрос и делать вид, что ты типа умный такой, хопа, clear же ёба, и обосрать всех.
#253 #610167
>>610163

>Ему-то нужно было другое


Ему нужно было изменить несколько символов на экране, да, это уже все поняли, но самым правильным способом это сделать является очистка всего экрана и отрисовка всей информации по новой. Зачем вы тут сидите? Чтобы быдлокодеров плодить?
#254 #610175
>>610163
Во-первых, видимо, этот способ используют, потому что он работает. Сомневаюсь, что этому анону первому пришла в голову такая идея, и раз ее не реализуют, значит есть причины.
Во-вторых, по поводу 500 строк был написано не для того, чтобы обосрать, а дабы натолкнуть на мысль, обсирание только в твоей голове.
В общем, адекватный анон все правильно тебе написал.
Вот только чем тебе clear не нравится? И скроллинг можно реализовать.
#255 #610179
>>610167
Но у него инфы больше чем на один экран, в этом же вся проблема.
Тем более, я согласен:

>vim-like странички, тогда пересовывать нужно будет лишь одну страницу, что, вроде бы, не так плохо.



>>610175
Я не он.

>Вот только чем тебе clear не нравится?


--> >>610133

>1. 'clear' не очищает экран, а просто сдвигает его.

#256 #610190
>>608702
Кто не скачет тот ситх
#257 #610206
>>610179
Под vim-like страничками подразумевается scrollback buffer или что?

>я не он


Тогда извини. Думаю, понятно кому адресовано.

>просто сдвигает его


Отображаем часть информации, допустим, с 10 по 20 строки. При нажатии клавиши up сдвигаем экран и выводим с 8 по 18. Я это имел в виду. Думаю, и скролл колесом мыши можно перехватывать.
#258 #610230
>>610206
Я подразумевал как раз то, что ты и описал, только не с clear, а нормальной очисткой консоли, без следов. В виме, по-моему, как раз clear и используется, который потом всю консоль и лог (если пишется) засирает, если я туда-сюда двигался.

Как раз хотел вечером и попробовать это реализовать с curses каким-нибудь, посмотреть, нормально ли оно выглядеть вообще будет: каждую секунду нужно бы обновлять данные (чаще смысла нет), но при этом чтобы и скролл был плавным и ничего там друг друга не сломало.
#259 #610232
>>610230
Посмотри вот это пример, думаю пригодится: https://github.com/LyleScott/Python-curses-Scrolling-Example
#260 #610303
Как надо называть методы, которые не должны дергаться снаружи? Приватных методов то нету. _foo? У меня так уже декораторы называются.
#261 #610315
>>610303
По конвенции _foo, как везде, или вообще __foo, чтобы огородить от переопределения в дочернем классе.
https://www.python.org/dev/peps/pep-0008/
12 Кб, 221x200
#262 #610328
>>610303

>Приватных методов то нету

14 Кб, 195x195
#263 #610381
Запилил свой первый проектик на джанге, http://edualist.com/
Он на английском только, и пока заполнены только пара разделов: http://edualist.com/programming/python/ и http://edualist.com/biz/startups/.
Заходите, проставляйте рейтинги, кидайте ссылки на крутые ресурсы.
Буду рад услышать пожелания.
#264 #610392
>>610381
Какое-то абсолютно неинформативное говно в стиле хипстурских ландинг пейджей.
#265 #610402
>>610381
На чём хостишься?
#266 #610406
>>610381
Вообще, сделано очень хорошо, ты молодец!
Единственное:

> Dota 2


> MOOCs


Чёт в голосяндру с этого.
#267 #610407
>>610402
AWS, бесплатный пока.
123 Кб, 1735x991
#268 #610410
>>610381
Иконки внизу страницы всё распидорасили нахуй.
(firefox 43)
#269 #610424
>>610381
А зачем и bootstrap и purecss?
#270 #610425
>>610303
Как меня воротит от эти _фоо, __фоо. Нет бы добавить наконец хотя бы какую-нибудь конструкцию для приватных методов, нет, хуй вам. Кококо пифон динамишный язык, приватность не нужна кококо. Зато, блядь, пепов для форматирования строк аж три сука! Зен пифона - это все, чего в пифоне нет.
#271 #610426
>>610424
Полагаю потому в purecss много чего еще нет (таблиц там, еще чего-то уже не помню).
#272 #610435
>>610381
сколько денег сайт приносит? как ты там бабло проставил чтобы покупать можно было?
#273 #610436
>>610425

>пифон динамишный язык, приватность не нужна кококо


Все так. Программист это не вендовый юзер с присохшим к мышке пальцем. Он сам знает что ему нужно, а что нет. Зачем его ограничивать? Достаточно дать понять, что автор не предусматривал использования функции снаружи, и _ для этого вполне то.
#274 #610444
>>610436
Это все понятно. Только читать код, на 80% состоящий из подчеркиваний то еще удовольствие. Вот и получается такая хуйня, что разрабам нужна приватность и они ее имитируют у себя в манямирке через эти ебанутые подчеркивания, вместо нормальных конструкций языка.
14 Кб, 407x178
#275 #610450
>>610444

>вместо нормальных конструкций языка.

#276 #610462
>>610435
Так вы первые, кому я его показал, можно сказать. Сделал тред на реддите: https://www.reddit.com/r/learnprogramming/comments/3xyib2/imdb_for_learning_resources/ , но он мертвый почти и тонет. Рекламы же нет, деньги будут, если только кто-то купит книгу с амазона (там есть бесплатный линк на книгу и на амазон), тогда я получу свои 5% примерно.
#277 #610473
>>610462
классс
#278 #610500
>>610450
И что тебе здесь не нравится, ублюдок? Объясни по пунктам и представься.
#279 #610504
>>610500
а как сделать чтобы появилось окно с кнопочкой?
#280 #610517
>>610504
ПУБЛИК ПРАЙВАТ СТАТИК ВОЙД ЕКСТЕНДС ПРОТЕКТЕД ПУБЛИК ПРИВАЙТ
#281 #610541
Туч, помоги решить задачку.
Нужно подсчитать сумму и количество натуральных делителей числа N. N<=10^9
сложность алгоритма корень из N
сделал просто со сложностью N, как сделать с корнем, не могу допереть, тупой
from math import sqrt
x=int(input())
T=0
S=0
i=1
while (i<=(x)):
if (x%i==0):
T=T+1
S=S+i
i=i+1
else:
i=i+1
print(T,S)

вот просто без корня
#282 #610546
>>610541

>питон


>помогите, но код без отступов


толстячок
#283 #610556
>>610546
x=int(input())
T = 0
S = 0
i = 1
while (i<=(x)):
if (x%i==0):
T = T + 1
S = S + i
i = i + 1
else:
i = i + 1
print(T,S)
#284 #610558
>>610556
Скрин сделай
#285 #610560
>>610558
Чтобы анону пришлось перепечатывать? Толстячок.

На пасту лей.
#286 #610561
>>610546
>>610556
Блять, вот короче:
http://pastebin.com/qugPr8Dc
#287 #610839
для pycharm 5.0.3 есть трещина?
#288 #610842
>>610839
За мокрыми писечками в /s/
#289 #610865
>>610425
Какой сочный бутхирт любтеля компилировать. Ко-ко-ко-мпиляция решит мои статические проблемы. Ко-ко-ко очепятки. Просто ты дибил.
#290 #610887

> “Укус Питона” – “A Byte of Python” - Ультрагоднота. Эта книга используется даже в НАСА!


А есть за НАСА пруфы? Ссылка на их сайте мертва
#291 #610932
>>610865
Но ведь действительно удобная вещь. Меня вот иногда коробит с некоторых названий в питоне, в отличие от шарпов.
#292 #610935
>>610932
ЭтоТамГдеНазванияМетодовНеВлезаютВЭкран? ВСледующийРазПопробуйПотоньше.
#293 #610936
>>610935
толсто
#294 #610990
>>610444

>Только читать код, на 80% состоящий из подчеркиваний


Это где такое? Куча "private" гораздо лучше, что ли?
Или ты имеешь в виду snake_case вообще?
#295 #611075
Всем доброго дня! Объясните пожалуйста, как нормально готовить асинхронный код в торнадо? Например как выполнить долгий запрос к бд в асинхронном режиме?
#296 #611076
>>611075
Тебе нужна асинхронная библиотека для доступа к бд
#297 #611077
>>611076
то есть декораторы в торнадо не делают код асинхронным, а код должен сам уметь асинхронность? Я так примерно и думал, просто надеялся, что я что-то упустил. Спасибо за ответ!
#298 #611117
Программач, учусь в 10 классе, последняя тема - тригонометрический круг, смогу ли я осилить "Конкретную математику" а так же "Введение в логику и научный метод"?
#299 #611124
>>611117
Нет.
#300 #611126
#301 #611129
>>610381
Вижу Grapelli. Там он чистый или вместе с, например, Mezzanine?
#302 #611131
>>608076 (OP)
У меня какие-то странные ассоциации возникают от оп-пика.
#303 #611132
>>610381
Олсо, проверяй сайт на мобильных. У тебя вместо иконки меню - 404.
И, на мой взгляд, не хватает сквозной навигации или поиска.
Непонятно, зачем summary - там дубль контента (или это Work In Progress просто?)
#304 #611133
>>611124
А как осилить тогда? Может литературы какой посоветуешь? Был бы очень признателен .
#305 #611134
>>611131
А что с ним? Фанатик сделал на 3д-принтере символику питона, очень даже мило.
#307 #611141
>>611137
SLAVA UREENE
#308 #611142
>>611141
Вообще-то, я про взаимное проникновение. Мне - меньше смотреть порнухи, тебе - меньше узнавать, что там у хохлов.
#309 #611160
>>610842
все такие богатые сидят с лицензиями?
#310 #611176
>>611160
Сижу с лицензионными вимом.
#311 #611178
>>611176
За скок взял?
#312 #611180
>>611178
Защеку.
#313 #611185
>>610936
Чего толсто? Ты сам свои шарпы видал? Сходи на гитхаб, возьми самый популярный репозиторий на шарпе. Открой рандомный сорец - ГОРИЗОНТАЛЬНЫЙ СКРОЛЛ, открой другой - ГОРИЗОНТАЛЬНЫЙ СКРОЛЛ, еще один - ГОРИЗОНТАЛЬНЫЙ СКРОЛЛ, ВездеГоризонтальныйСкролл и охуительные названия на пол-экрана.

Я вот сейчас смотрю dotnet/corefx и не могу найти ни одного сорца без горизонтального скролла.

>static bool EnumCalendarsCallback(IntPtr lpCalendarInfoString, uint calendar, IntPtr reserved, Interop.mincore_private.LParamCallbackContext cxt)


>result = Interop.mincore.GetLocaleInfoEx(LOCALE_NAME_USER_DEFAULT, LOCALE_SNAME, localeName, LOCALE_NAME_MAX_LENGTH);


>GetCalendarMonthInfo(localeName, calendarId, CAL_SABBREVMONTHNAME1 | CAL_RETURN_GENITIVE_NAMES, out this.saAbbrevMonthGenitiveNames);


>хорошие названия

#314 #611191
>>611077
В офф документации не написано?
#315 #611192
>>611185
двачую братишку, надо писать:

>static bool var(IntPtr a, uint b, IntPtr c, Interop.mincore_private.Ctx cx)


>res = Interop.mincore.GetInfo(name, sName, lName, len);


>GetMonthInfo(lName, id, mName | gNames, out this.gNames);

#316 #611218
#317 #611220
#318 #611221
#319 #611222
#320 #611223
>>611117
Зачем в питонтреде это спрашиваешь?
#321 #611226
>>611185
Выкини свой квадрат и купи монитор.
#322 #611262
>>611226
https://github.com/dotnet/coreclr/blob/master/src/mscorlib/corefx/System/Globalization/CalendarData.Win32.cs

Показывай отсутствие горизонтального скролла на своем мониторе.
#323 #611479
Почему не работает глобальная настройка точности в питоне 3.2.2?
Вот например:

>>> s = "2414125.146133616"


>>> s


'2414125.146133616'

>>> s = "245.246526256"


>>> import decimal


>>> decimal.getcontext().prec = 3


>>> decimal.Decimal(s)


Decimal('245.246526256')
#324 #611487
>>608076 (OP)
Как в командной строке питона менять директорию??? cd не работает, заебался уже гуглить (питон 2,7,5)
#325 #611494
>>611487
import os
os.chdir(path)
#326 #611498
>>611494
invalid syntax
#327 #611500
>>611498
Если тебе нужна помощь, то покажи свой invalid syntax, иначе я не справлюсь.
#328 #611501
>>611129
Чистый.
>>611132
Спасибо. Не заметил этого на своём.
#330 #611503
>>611502
В ковычки возьми, path - строка.
#331 #611504
>>611502
Иди лучше веселые картинки смотри.
#332 #611505
>>611504
разберусь с этой хуйней и пойду
#333 #611507
>>611503
бля спасибо, я заебался от этой хуйни уже
#334 #611590
В Celery есть способ ограничить число одновременно обсчитываемых тасок?
Пример: у меня в каждой таске запускается PhantomJS через Selenium и занимается скрейпингом жаваскриптового приложения. Хочу, чтобы в любой момент времени на одном воркере крутилось 20 браузеров. rate limiting - не то, я понятия не имею, за сколько таска отработает ( разброс от 15 секунд до 300 ).
#335 #611594
>>611590
докйу ментацию читай
#336 #611608
>>611594
Охуеть совет, чем я занимаюсь большую часть времени, как ты думаешь? Она как-то не особо богата примерами и подробными обьяснениями. Наверное если я дошел до вопросов на дваче, то доки как-то не раскурились.
#337 #611610
>>611608
Может кодинг - не твоё?
#338 #611620
Проблема с tkinter'ом, собственно код:
tl = ['+','-','*','/','=','.']

znaki = [Button(r,text=i,width=1,height=1,command=lambda : f(i + 1)) for i in range(10)],(
[Button(r, text=tl,width=1,height=1,command=lambda : f(tl)) for i in range(6)])
Функция f печатает значение i или tl, но печатает она только последнее значение в указанное в цикле(10 или '.'). Почему она печатает только последнее значение и как это можно исправить?
#339 #611622
>>611620
Быстрофикс, tl
9 Кб, 728x75
#340 #611635
>>611620
Не показывает квадратные скобки, фикс картинкой.
#341 #611640
>>611620

>Последнее значение, указанное в цикле. Нужно идти спать.

#342 #611663
>>611610
сукабля, вот я аутист, workers->concurrency работал очевидно правильно, просто чайлд процессы не подчищались автоматически и из-за этого у меня через 5 минут многие сотни браузеров заполоняли систему.
Мораль: чистите все в таске за собой перед return внимательно.
Но чсв у тебя таки явно завышенное, да, добрее надо быть.
#343 #611665
>>611663
А в чем ты увидел злость?
#344 #611679
Там на курсере курс по питону для начинающих бесплатный https://www.coursera.org/learn/python/
может надо кому.
#345 #611690
>>611679
Ты проходил этот курс?
#346 #611693
>>611690
Нет, записался интереса ради, сейчас первую неделю смотрю. Как всегда первые пол книги/туториала/... - до пизды дверца чистой водый.

Но а так народ (не маркетологи же, на бесплатный курс-то) вроде хвалит, я частенько референсы на этот курс встречал.
#347 #611694
>>611693
Я не совсем понял, почему цена указана, если он бесплатный. А курс какой-то ну очень вводный, циклы только на седьмой неделе.
#348 #611708
>>611694
Нажми без сертификата и цена пропадёт
Ну они каждый месяц идут, типа, все 5 курсов сразу. С учётом того что я почти первую неделю добил за вечер, думаю до официального начала 28го числа я и на вторую часть записаться успею.

Вообще проклятие какое-то, блядь. Не думал что я такой деревянный уже стал. Прошел кодекадеми, прочитал и прорешал A bite of python, Hello Python, Mark Dowson - Programming with Python, Learn Python hard way, по-немногу прохожу уже полтора раза прочитанную Think Python паралельно с почитываниями ебучего Луца "Изучаем питон", пару туториалов по джанго ебучей и прочим поебеням... сажусь писать код И ЕБАНОЕ НИХУЯ! Я тупо не представляю как его писать. Ни с джангой, ни на чистом. Вот вообще. Закрыл книжку и нихуя не понимаю. Задачки поставленные решать решаю, всякие гитхабоподелки нубские переписывать могу, а своё - хуй на воротник. Нахуй те классы даже понять не могу, генераторы и прочие декораторы меня ставят в тупик просто блядь.
#349 #611719
>>611708
Понял, спасибо.

Может у тебя просто сложности с постановкой задач, не знаешь как делать, потому что не знаешь что именно делать.
#350 #611725
>>611719
Понятия не имею что со мной не так. Если и это комбо из последних двух книжечек не принесёт результата - пойду SICP дочитывать и решать на питоне.
#351 #611756
>>611725
Просто у тебя шаблоны задач в голове. Пойди, прогуляйся, посмотри на мир, и найди в природе задачу для себя, составь, и вперёд за питон.
#352 #611759

> Пойди, прогуляйся, посмотри на мир


))
81 Кб, 600x565
#353 #611760
#354 #611780
>>611725
Тогда я не пойму зачем тебе курс для новичков. Что ты там нового хочешь услышать.
#355 #611783
Аноны, поясните за быдло коддинг статью в лурочке не надо, что по вашему быдлокодинг и как его избежать? Заранее спасибо за ответ.
#356 #611797
>>611783

>что по вашему быдлокодинг


Любой кодинг.

>и как его избежать?


Не кодить.
#357 #611803
>>611797

>Любой кодинг.


Любой кодинг сделанный не тобой.

починил
#359 #612032
>>612008
Жилбихряк собаку няк.
#360 #612042
Требуется прочитать массив из long double (10 байт). Python нативно умеет только 8 байт, через numpy ещё и 16 (float128).

Задачу я решил следующим образом:

def chunks(lst, chunk_size): return (lst[i:i+chunk_size] for i in range(0, len(lst), chunk_size))

def str2tuple(INPUTSTR): return tuple(float(numpy.frombuffer((buf + 6*b'\x00'), dtype = numpy.float128)) for buf in chunks(INPUTSTR, 10))

Анон, теперь расскажи, как такую задачу выполняют нормальные люди
#362 #612045
>>612044
Добра тебе!
#363 #612082
>>608076 (OP)

from scipy.optimize import linprog as lp

edges = []
weights = []

infile = open('input.txt','r')
for line in infile:
if len(line.split(' ')) == 2:
edges.append((int(line.split(' ')[0]),int(line.split(' ')[1])))
else:
weights.append(int(line.split(' ')[0]))

N=len(weights)
M=len(edges)

x_bounds = []
b = []
A = []
for i in range(0,N):
x_bounds.append((0,1))
for i in range(0,M):
b.append(-1)
for i in range(0,M):
tmp = []
for j in range(0,N):
tmp.append(0)
tmp[edges[0]-1]=-1
tmp[edges[1]-1]=-1
A.append(tmp)

solution = lp(weights, A_ub=A, b_ub=b, bounds=x_bounds)

outfile = open('output.txt','w')
with outfile:
for i in range(0,N):
if solution.x>=0.5:
outfile.write(str(i+1)+' ')

Кароче вот рабочий код на питон 2,7,5

Может кто, у кого стоит питон 3, проверить заработает ли он на 3 питоне?

Если не сложно, подскажите что где заменить, чтобы заработал.
#363 #612082
>>608076 (OP)

from scipy.optimize import linprog as lp

edges = []
weights = []

infile = open('input.txt','r')
for line in infile:
if len(line.split(' ')) == 2:
edges.append((int(line.split(' ')[0]),int(line.split(' ')[1])))
else:
weights.append(int(line.split(' ')[0]))

N=len(weights)
M=len(edges)

x_bounds = []
b = []
A = []
for i in range(0,N):
x_bounds.append((0,1))
for i in range(0,M):
b.append(-1)
for i in range(0,M):
tmp = []
for j in range(0,N):
tmp.append(0)
tmp[edges[0]-1]=-1
tmp[edges[1]-1]=-1
A.append(tmp)

solution = lp(weights, A_ub=A, b_ub=b, bounds=x_bounds)

outfile = open('output.txt','w')
with outfile:
for i in range(0,N):
if solution.x>=0.5:
outfile.write(str(i+1)+' ')

Кароче вот рабочий код на питон 2,7,5

Может кто, у кого стоит питон 3, проверить заработает ли он на 3 питоне?

Если не сложно, подскажите что где заменить, чтобы заработал.
#364 #612086
>>612082
так, тут проебалось написание

вот нормальный код http://pastebin.com/2uvJj3Gk
#365 #612088
>>612082
Как-то ты странно with используешь.
2to3 прогнать не судьба? Вообще не вижу ничего чтобы не работало на 3-ке

> Может кто, у кого стоит питон 3


А поставить не судьба?
#366 #612091
>>612088
поставлю как нибудь, но мне по быстрому надо результат
#367 #612094
>>612088
в чем странность? можешь проверить, исполняется ли срипт?
#368 #612095
>>612094
Обычно делают with open('file') as var:
#369 #612096
>>612095
и в чем принципиальная разница?
#370 #612104
>>612088
Можно без опасений ставить самую последнюю версию питона 3?
#371 #612106
#372 #612184
>>612104
нельзя, проги второй версии работать не бдудут.
64 Кб, 800x600
#375 #612195
#376 #612200
>>612187
Это и есть проблема, которая ракрывается в эмблеме питона в ОПа. Интерфейс очень ограничен.
#378 #612206
>>612204
Там даже видно что синий страдает и желтый, тоже страдает. Но синий страдает больше. Видимо 3-ий питон всетаки.
#379 #612210
http://www.youtube.com/watch?v=yv6KAzRPHkc
ed- лучшая ide. докажите обратное.
#380 #612212
>>612206
3-й питон говно для нубов. В продакшене его не используют.
#381 #612215
>>612204
Синий всетаки всунул поддержку фьючерсов в желтый, но всеравно слишком все шатко, как-тою
#382 #612217
Да вы тут все пизданулисью
#383 #612218
>>612212
хз, я юзаю мне пох. разницы не вижу никакой.
#385 #612230
>>612227
оберни меня крепче
#386 #612232
>>612230
оберон
#387 #612238
>>612232
я хочу почыствовать теплоту ваших рук, крепче
#388 #612239
>>612238
А у меня руки всегда холодные и потные.
#389 #612491
>>612096
Не питонично + не уверен, что файл закроется.
#390 #612497
>>608275
Граф.
#391 #612539
Анон с selenium webdriver в тасках celery возвращается.
В каждом таске открываю новый webdriver. Убиваю его в хендлерах on_failure, on_succes. Все равно со временем фантомы утекают, откуда? В какой ситуации у меня таск завершается, не вызвав один из этих хэндлеров?
#392 #612557
У меня получилось, пацаны, я счастлив блин! Я блядь программирую нахуй! И полностью понимаю почему все идёт так, а не иначе, что писать что бы получить то, что мне нужно!
Уверен это все звучит для вас как бред, но бля я считай месяц назад и кодить ничего не умел вообще а сейчас говнокодю собственное говно не из учебника! Уииии бля
#393 #612567
>>612557
молодец, Кирилл, сосач тобой горд
#394 #612580
>>612557
Что пишешь?
#395 #612596
>>612497
Барон.
#396 #612597
>>612557
Надеюсь ти не хохол. Тогда поздравляю.
67 Кб, 600x499
sage #397 #612686
#398 #612687
>>612557
Поздравляю. У самого нихуя не выходит. Теория читается, а как до личных задумок доходит -- ни строчки.
#399 #612689
Нахуй я так рано встал? Потому что спать не мог, потому что во сне мысли лезли, как это сделать, как то сделать, пятое-десятое, хуе-мое. Проснулся - уже устал. Ничего сегодня делать не буду.

>>612687
Автоперекатывалку питонотреда уже написал?
30 Кб, 1337x611
#400 #612701
>>611262
14".
inb4: шрифты.
#401 #612723
>>612539

Он так и будет течь, запиливай костыли
6 Кб, 307x92
#402 #612727
>>612701
требование так-то с подвохом было. сразу видно что ты пиздун.
#403 #612728
>>612212
В продакшене вообще фортран да кобол используют. С каких пор мы ориентируемся на энтерпрайз?
#404 #612767
>>612727

>требование так-то с подвохом было.


Так и ответ такой же, чего обзываться сразу, я вообще мимоанон же. Перед тем, как взялся, я надеялся, что придётся ещё и шрифт до 4-6 кегля уменьшить, для большей комичности, но оказалось, что не такое уж там и широкое всё.
103 Кб, 1366x589
#405 #612773
>>608076 (OP)
Почему не работает?
#406 #612778
>>612773
Точнее первый пример не проходит
#407 #612786
>>612773
>>612778

Все, решил проблему, затупил немного, забыл про пустой массив.
#408 #612789
>>612786
Не подскажешь, почему все так активно используют while? Мне вот кажется, что for удобнее.
#409 #612798
>>612789
Если ты мне задавал вопрос >>612773 , то скажу так, я пока учу питон и не до конца разобрался с этими циклами, как-то не удобно сделали, вот на java лучше, while пришлось просто использовать
#410 #612830
>>612723
Так до того, что он течет, я догадался. Я пытаюсь понять где дырка. Как я понимаю, у меня начинается обработка новой таски, а у старой не вызвался ни on_succes, ни on_failure. Как такое может быть?
23 Кб, 188x106
26 Кб, 189x221
#411 #612882
как округлить в 0.79999 в большую сторону до десятых? спасибо
#412 #612884
Питоны, почему
[CODE]
builder = Gtk.Builder()
builder.add_from_string("""myxml""")
[/CODE]
не добавляет вообще ничего от слова совсем, а
[CODE]
builder = Gtk.Builder()
builder.add_from_file("myxml.glade")
[/CODE]
работает просто прекрасно при одинаковом xml?
#413 #612886
>>612882
import math; math.ceil
Вообще почитай как числа с плавающей запятой в компе хранятся.
#414 #612890
>>612884
хз. а так?
self.UIManager = gtk.UIManager()
self.UIManager.add_ui_from_string(uiDescription)
#415 #612891
>>612882
[code language="python"]round(0.7+0.1, 1)[/code]
#416 #612892
>>612891
Блджад. [code language="python"] round(0.7+0.1, 1) [/code]
#417 #612893
>>612892
[code]
round(0.7+0.1, 1)
[/code]
#418 #612895
>>612893
Во, сработало.
#419 #612897
>>612890
Ругается на все теги подряд
#420 #612901
>>612897
Вообще этот uimanager немного не для этого. ну хз. а в чем проблема из файла загружать интерфейс?
#421 #612904
>>612901
Да ни в чем в сущности, просто не понимаю, какого хера.
#422 #612905
>>612904
А что оно возвращает?

>Returns :A positive value on success, 0 if an error occurred.

#423 #612910
>>612905
1, как и add_from_file()
#424 #612973
Решил прочесть книжку про Python из оп-поста. Пока читаю, задам тут вопрос: бывают ли вакансии для питонистов, где не нужен Джанго и не веб-разработка?
#425 #612974
>>612973
Бывают иногда.
#426 #612976
#427 #612996
>>612884
тебе скорее нужен new_from_string как пишут в доках.
#428 #613106
>>608445
Забываешь все, что узнал, читаешь Thinking in Java, изучаешь JavaFX, JavaEE, Spring, Hibernate и находишь работу.
#429 #613109
>>613106
Мы вам перезвоним.
#430 #613116
>>609323

>Python-тред


>компилировать


Щито?

>>609222
По ссылке.

>>609449
Лучше aiohttp http://aiohttp.readthedocs.org/en/stable/
#431 #613134
Антуаны, только закончил курс codeacademy по питону. Что посоветуете написать чтобы набить руку? До этого имел довольно большой опыт программирования на Pascal/ Delphi. Прошу палками не бить, так как программирование для меня хобби, которое с моей основной специальностью никак не связано.
#433 #613140
>>613137
А есть что нибудь еще?
#434 #613143
>>613140
Есть еще две рулетки, но я их проебал. Личных интересов то у тебя нет? На питоне автоматизировать можно даже небо, даже Аллаха.
#435 #613144
>>613134
http://blog.programmersmotivation.com/2014/07/09/list-projects/
Полистай ещё Think Python, оно есть если что на русском, ну и вообще оно всецело охуенное. Не тупые задачки типа заебень свою инпут-иф-елиф-елс текстовую игру, а парсинг имдб что бы выстроить графы и найти где ещё какой-нибудь жлоб снимался и с кем работал больше одного раза и тд и тп
#437 #613150
>>613143
Личные интересы - криптография, автоматизация, электроника,
#438 #613152
>>613146
https://www.hackerrank.com
https://www.codechef.com/
https://en.wikipedia.org/wiki/List_of_algorithms
https://github.com/karan/Projects-Solutions/blob/master/README.md
http://pythonpracticeprojects.com/
http://exercism.io/languages/python
https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life
http://www.w3resource.com/python-exercises/
http://rosettacode.org/wiki/Category:Programming_Tasks
http://usingpython.com/programs/
https://pythonspot.com/
http://www.practicepython.org/
https://www.quora.com/What-are-some-great-programming-projects-for-beginners
https://www.daniweb.com/programming/software-development/threads/32007/projects-for-the-beginner
https://github.com/gregmalcolm/python_koans
http://www.koverholt.com/2008/03/the-golden-resource-list-for-python-beginners/
https://pythonspot.com/
https://hourofpython.com/
http://www.cse.msu.edu/~cse231/PracticeOfComputingUsingPython/index.php
https://github.com/karan/Projects
http://www.makeuseof.com/tag/5-project-ideas-help-learn-programming-faster/
https://m.reddit.com/r/learnprogramming/comments/2a9ygh/1000_beginner_programming_projects_xpost/
http://www.openbookproject.net/py4fun/
http://code.activestate.com/recipes/langs/python/

может оп или кто у нас за перекаты отвественный их куда-нибудь в фак заебенит, в списке совсем говна вроде нету, но местами конечно проскальзывает

>>613150
Почитай ещё Python for Unix and Linux System Administration
#438 #613152
>>613146
https://www.hackerrank.com
https://www.codechef.com/
https://en.wikipedia.org/wiki/List_of_algorithms
https://github.com/karan/Projects-Solutions/blob/master/README.md
http://pythonpracticeprojects.com/
http://exercism.io/languages/python
https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life
http://www.w3resource.com/python-exercises/
http://rosettacode.org/wiki/Category:Programming_Tasks
http://usingpython.com/programs/
https://pythonspot.com/
http://www.practicepython.org/
https://www.quora.com/What-are-some-great-programming-projects-for-beginners
https://www.daniweb.com/programming/software-development/threads/32007/projects-for-the-beginner
https://github.com/gregmalcolm/python_koans
http://www.koverholt.com/2008/03/the-golden-resource-list-for-python-beginners/
https://pythonspot.com/
https://hourofpython.com/
http://www.cse.msu.edu/~cse231/PracticeOfComputingUsingPython/index.php
https://github.com/karan/Projects
http://www.makeuseof.com/tag/5-project-ideas-help-learn-programming-faster/
https://m.reddit.com/r/learnprogramming/comments/2a9ygh/1000_beginner_programming_projects_xpost/
http://www.openbookproject.net/py4fun/
http://code.activestate.com/recipes/langs/python/

может оп или кто у нас за перекаты отвественный их куда-нибудь в фак заебенит, в списке совсем говна вроде нету, но местами конечно проскальзывает

>>613150
Почитай ещё Python for Unix and Linux System Administration
#439 #613172
Подскажите, парни:

Вот может юзер ввести скажем 1:20:00 - т.е. 1 час 20 минут
Может ввести 2:10 - т.е. 2 минуты 10 секунд

Как это по-красивее в конструкцию завернуть что бы не if user_input.count(':') == 2: ....
Это же паттерны по-идее уже? Если не затруднит подсобите примерчиком-другим
#440 #613194
Напомните, пожалуйста, как называтеся diff с красивостями на питоне?
#442 #613202
>>613201
Да, точно он, спасибо.
#443 #613205
>>613201
А, он оказывается в винду плохо умеет. Есть альтернативы с подобным функционалом?
#444 #613206
>>613205
Хз, может есть. Пользуйся нормальными системами.
#445 #613306
Доставьте тот пик, на котором Гвидо и типа список из десятка важных (ненужных) фич.
233 Кб, 800x695
#446 #613309
>>613306
Сохранял еще когда питон учить не начал. Лет пять назад наверное.
#447 #613325
>>613309

>быстродействие


Такое же как и у других языков этого класса. Ну и PyPy уже работает, правда жрёт память как жаба.

>многопоточность


Было бы конечно круто, но те кто пытались делать ниасилели.

>компилятор


Интерпретируемому языку? Во всяком случае компиляторы таки есть. Но они по сути не более чем бандлеры рантайма (=интерпретатора) и питонокода в одну экзешку. И сделать это как-то иначе нельзя.

>проверка типов


Есть декларации типов и линтеры. Опять же, питон позиционируется как язык попроще, это никогда не было целью. Но если хотите, есть Cython.

>приватные методы


По договорённости обозначаются _, в некоторых случаях интерпретатор это использует.

>паттерн-матчинг


Частично присутствует. Можно быстро разбирать на части кортежи.

>хвостовая рекурсия


Гвида говорит что это усложнит дебаг из-за проёбанных трейсов вызова и принесёт мало выгоды. Здесь вам не хаскель, где это критично.

>switch-case


Громоздкий динозавр с хитровыебанной логикой сравнения. Можно обойтись без него.

>карринг


Что мешает делать карринг?

>ленивость


Вычисление условий лениво. Стратегия вычислений классическая императивная, глобальной всеобъемлющей ленивости тут не нужно. Есть дохуя разных генераторов, работающих лениво.

>алгебраические типы


Это выгодно только для статической типизации.

>округление результатов


Ещё один уёбок не знает как работают числа с плавающей точкой?

>соглашения об именовании


PEP8 + общепринятый стиль, который на удивление мало кто нарушает.
#447 #613325
>>613309

>быстродействие


Такое же как и у других языков этого класса. Ну и PyPy уже работает, правда жрёт память как жаба.

>многопоточность


Было бы конечно круто, но те кто пытались делать ниасилели.

>компилятор


Интерпретируемому языку? Во всяком случае компиляторы таки есть. Но они по сути не более чем бандлеры рантайма (=интерпретатора) и питонокода в одну экзешку. И сделать это как-то иначе нельзя.

>проверка типов


Есть декларации типов и линтеры. Опять же, питон позиционируется как язык попроще, это никогда не было целью. Но если хотите, есть Cython.

>приватные методы


По договорённости обозначаются _, в некоторых случаях интерпретатор это использует.

>паттерн-матчинг


Частично присутствует. Можно быстро разбирать на части кортежи.

>хвостовая рекурсия


Гвида говорит что это усложнит дебаг из-за проёбанных трейсов вызова и принесёт мало выгоды. Здесь вам не хаскель, где это критично.

>switch-case


Громоздкий динозавр с хитровыебанной логикой сравнения. Можно обойтись без него.

>карринг


Что мешает делать карринг?

>ленивость


Вычисление условий лениво. Стратегия вычислений классическая императивная, глобальной всеобъемлющей ленивости тут не нужно. Есть дохуя разных генераторов, работающих лениво.

>алгебраические типы


Это выгодно только для статической типизации.

>округление результатов


Ещё один уёбок не знает как работают числа с плавающей точкой?

>соглашения об именовании


PEP8 + общепринятый стиль, который на удивление мало кто нарушает.
#448 #613365
Как в питоне реализуются связные структуры данных?
Я знаю, что в С исплользуются указатели. А в питоне получается любая переменная по сути указатель на объект. Короч, объясните ньюфагу.
#450 #613380
>>608476
Его не надо читать как Библию от корки до корки. Открывай, когда нужно найти решение. У Лутза очень подробно показано как решить конкретную задачу.
#451 #613381
Самая известная критика питона 3
http://habrahabr.ru/post/147281/
#452 #613382
>>613381

>7 Декабря 2011.

#453 #613393
>>613382
Так автор статьи продолжает возмущаться. Все правда под устали от его критики, но она справедлива.
#454 #613394
>>613382
Вот посвежее http://lucumr.pocoo.org/2014/5/12/everything-about-unicode/
Я читал перевод на русском, не могу сейчас найти.
#455 #613395
>>613365
Во-первых есть иммутабельные объекты, на которые лучше смотреть как на обычные скалярные значения. Т.е. 57 это 57 вне зависимости от количества копий этого значения в памяти.

Во-вторых есть объекты мутабельные. Вот здесь уже аналогия из си. Например list, dict, set.

Для связности нужно просто ссылаться объектам друг на друга:

a = {'name': 'initial'}
b = {'name': 'next'}
a['fwd_link'] = b
b['rev_link'] = a

Фишечка в том что рекурсивного пересоздания структур при таком присвоении не происходит, как бы ставится только указатель.

b['OP'] = 'hui'
assert a['fwd_link']['OP'] == 'hui'

Но в отличие от си думать про указатели не нужно. Можно легко выкинуть любое из имён:

del b
assert a['fwd_link']['OP'] == 'hui'

Пока есть возможность достучаться до какого-то закоулка связной структуры, она висит в памяти. Полностью вычистить можно удалив и второй объект:

del a
#456 #613396
>>613393
>>613394

Да бросьте, это обычный веб-быдлокодер. Проблемы питоньего си-говнокода:

1. В си-говнокоде.
2. В недостаточном количестве людей хорошо понимающем весь код интерпретатора.
3. В отсутствии ясного понимания куда в конечном итоге питон прикатится.
4. В наличии десятка реализаций питона с разными особенностями. В статьях скорее всего критика исключительно сишной реализации.

Все четыре проблемы заведомо неразрешимы. Что там и через какие слоты реализовано - да кого оно ебёт пока оно работает?
#457 #613433
>>613381

>Армина Ронахера


Дальше не читал.
#458 #613494
>>613374
Супер, бро! Спасибо большое!
#459 #613525
>>613395
Понял. Спасибо.
177 Кб, 728x1116
#460 #613607
Реверсинжинерю одну игру, там есть один скриптовый файл на питоне. Нужно изменить его таким образом, чтобы при запуске игры открывался терминал и туда в реальном времени писались все вызовы функций. Как сделать так, чтобы при инициализации скрипта открывалась консоль с возможностью вывода текста? Напихать принтов/врайтов в каждую функцию скрипта не проблема, а вот с консолью я что-то туплю. Ах да, винда 7, питон 2.7
#461 #613608
>>613607
Отредактируй PE заголовок, чтобы превратить windows application в console application (http://stackoverflow.com/questions/574911/difference-between-windows-and-console-application), должно быть достаточно.
#462 #613642
Умеет ли Meld показывать только не идентичные файлы?
#463 #613869
>>613608
Не, я хочу отдельное окно, куда мой скрипт будет вываливать инфу. Накатал гуишку на tkinter, даже умудрился ее запустить с помощю subprocess.Popen, но не могу переливать инфу между модулями. То есть я посылаю с помощю stdin.write(data) инфу, но сраный ткитнер принимает только перое такое сообщение. Читаю с помощю raw_input().
Короче, вот моя гуишка:
http://pastebin.com/pRZLxGJV
Вот тестовый скрипт:
http://pastebin.com/wjT7t9jA

Получается, что гуишка показывает только первую строку "345", а когда отправляю "123" уже не обновляется.
sage #464 #613874
>>613869
А зачем это?
#465 #613876
>>613874
Сажа офф.
#466 #613877
>>613869
Ты change вызываешь 1 раз в ините.
#467 #613898
>>613874
Хочу запилить бота для wot, там есть мод для миникарты, который управляется скриптом на питоне. Я хочу переписать этот скрипт чтобы получать инфу о состоянии игры. Скрипт инициализируется при старте игры. Я хочу чтобы при инициализации он запускал консоль/гуишку и выводил туда основные параметры: координаты и состояния танчиков.
>>613877
А как сделать чтобы вызов был циклический? Ткитнер реагирует на события: клики, тычки веточкой, нажатия клавиш. Как мне обновлять лейбел в цикле?
#468 #613899
>>613898

>Ткитнер реагирует на события: клики, тычки веточкой, нажатия клавиш.


Да, для этого есть коллбэки.

>Как мне обновлять лейбел в цикле?


Запили что-нибудь типа

def change_text():
text_variable.set(value)
tk.after(500, change_text)

Могу ошибаться, давно не пользовался.
#469 #613900
>>613898

> бота для wot


Лень даже гуглить, так что сам ищи. Возможно там пифон с урезанными возможностями и ты не сможешь запустить ни гуй, ни консольку.

> А как сделать чтобы вызов был циклический? Ткитнер реагирует на события: клики, тычки веточкой, нажатия клавиш. Как мне обновлять лейбел в цикле?


Читай документацию. Если тебе нужен цикличный опрос и обязательно нужен tkinter, то надо городить ещё один тред, который будет "слушать" консольку и что-то менять в гуе.
#470 #613922
>>613607
А использовать trace не получится?
#471 #613934
>>613396

>> это обычный веб-быдлокодер


Армин Ронахер быдлокодер? Ты чё охерел? Не позорься тут.
#472 #613936
>>613396

>>скорее всего критика исключительно сишной реализации


ну так почитай, а потом поговорим
#473 #613937
Вот еще знаменитая статья про рак мозга у питонистов. Доклад делал Джэк Дидрих, это один из девелоперов Питона. Короче он входит в божественный пантеон.
http://habrahabr.ru/post/140581/
#474 #613939
>>613937
Ну, капитанство в статье зашкаливает.
#475 #613941
>>613939
а по существу он прав
sage #476 #613942
>>613939
Ты не понимаешь, это первый признак наличия человека в "божественном пантеоне". Нужно больше кумиров.
#477 #613955
В https://empireofcode.com/ ебашит кто? Такие-то тридэ роботы в браузере под управлением ЖС / Питон
#478 #613959
>>613934
Да, я ссу на ваши авторитеты. Потому что могу. И потому что знаю как изнутри поддерживаются сишные проекты. Си это как гроб, раз забив гвозди и закопав, хуй нормально отрефакторишь потом.

>>613936
Да читал я. Ну используются там слоты, ну не дают они делать труЪ-ооп и в хвост, и в гриву, и с подкатом вприсядку. Ну есть там условно неоптимальные места. Но эта статья 100% не заслуживает оказанного ей внимания. Это не advanced-level знание о питоне, это хуета, которая каждый день сотнями фиксится во всех известных проектах.
#479 #613961
>>613941
Вовсе нет. Это уж на совсем начинающих расчитано.
#480 #613963
>>613955
Я давно не заходил, и оказалось, что весь прогресс пропал, да еще кто-то на мою новую беззащитную базу напал. Очень увлекательно.
79 Кб, 332x360
#481 #613964
>>613959

> Си это как гроб, раз забив гвозди и закопав, хуй нормально отрефакторишь потом.

#482 #614098
>>613959
Возможность рефакторить зависит не от языка, а от разработчика и процесса.
Сам делал рефакторинг довольно объёмного кода на Си, написанного под телеком-железо. Но перед рефакторингом обязательно покрыть код юнит-тестами.
#483 #614176
https://www.linux.org.ru/news/doc/12226425

Ну что же вы, учоные?
#484 #614241
Задница в клочья от SQLAlchemy. Какого хуя так сложно по сравнению со встроенным ОРМ в Джанго?
#485 #614242
>>614241
И где блядь автогенерация описания моделей из коншольки?
#487 #614283
>>614245
Имел в вид что-то вроде команды ./manage.py dumpdata app_name.
#488 #614286
В sqlalchemy я насколько понимаю, есть общедоступные типы колонок (агностичные к БД). А в sqlalchemy.dialects лежат типы, например, имеющиеся конкретно в MySql. Как и что лучше использовать?
#489 #614309
Что проще и понятнее для начинающего - джанго или фласк?
Не беря в расчет вопросы с работой и прочим дерьмом.
#490 #614314
>>611142
порнуха это ужасно
#491 #614316
>>614309
Фласк с виду проще, но много надо пилить самому, если нужно что-то посложнее.
Катись в Джанго, там хоть сразу в MVC врубишься.
#492 #614319
>>614314
Обоснуй. Меня порнуха кормит.
#493 #614322
>>614316
Ты сам то что знаешь?
А во фласке MVC что нету?
#494 #614323
>>614322
В джанго нет MVC. Там MTV.
#495 #614326
>>614323
https://ru.wikipedia.org/wiki/Django

>dʒæŋɡoʊ — свободный программный каркас для веб-приложений на языке Python, использующий шаблон проектирования MVC.

#497 #614332
>>614328
Напридумывают бля.
#498 #614337
>>614328
а по русски то че?
#499 #614343
>>614337
ок понял
#500 #614347
>>614316

>Фласк с виду проще, но много надо пилить самому, если нужно что-то посложнее.


Можно тогда поконкретнее, с какими велосипедами я столкнусь во фласке?

Мне во фласке понравилась архитектура,
#501 #614427
>>614347
Ну же анонi. Четко. Ясно. По порядку.
36 Кб, 726x444
#502 #614464
Не могу найти косяк, трекбек не вылазит, просто при регистрации, после ввода логина выкидывает назад в меню, проблема находится именно в последнем elif функции control_login. Без него всё работает. Самое странное то, что вчера всё работало, а сегодня почему то нет, хотя вроде ничего не менял
#503 #614499
>>614464
Логин содержит некорректные символы?
#504 #614513
>>614499
нет, но если содержит то выдаст ошибку, то есть условие сработает, а если всё правильно пишешь то выкидывает
#505 #614517
>>614513
А не должено выкидывать? Судя по коду у тебя произойдет return None
#506 #614518
>>614517
А если блок этот убрать то будет return True происходить
#507 #614520
>>614517
хм, нет не должно. Мне нужно return True. Не понимаю почему возвращается None?
#508 #614522
>>614517
Всё, всё понял, отступов нет)
4 Кб, 191x107
#509 #614523
>>614520
Потому что у тебя никакого return не происходит а по-умолчанию возращается None
#510 #614529
Ставлю в virtualenv

>pip install libtcod-cffi (библиотека для рогаликов)


На определённом этапе получаю

>Failed building wheel for libtcod-cffi



В итоге получаю ошибку

>Сommand "/home/i/dev/myvenv/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-c5Gjs0/libtcod-cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-uiVALf-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/i/dev/myvenv/include/site/python2.7/libtcod-cffi" failed with error code 1 in /tmp/pip-build-c5Gjs0/libtcod-cffi



Щито оно ещё блядь от меня хочет? я и так целую гору говна наставил типа полного пакета setuptools и прочих

>sudo apt-get install python-dev libffi-dev libssl-dev libxml2-dev libxslt1-dev



Ошибка гуглится, а толку с этого хуй
#511 #614558
>>614523
Это если логин будет содержать некорректные символы.
#512 #614559
>>614558
А, также если логин в базе.
#513 #614682
Курс на udemy от автора "Automate the Boring Stuff with Python", бесплатно, если до конца года записаться. В общем, тут все написано, вдруг кому пригодится: https://redd.it/3yjxwx
#514 #614700
Начал читать книжку из оп-поста. Как-то уныло читать в 50й раз про функции, переменные, списки. Может где-то можно прочитать отдельно про функционыльные особенности языка? Про лямбды? Или может эта книжка есть в pdf-djvu?
#515 #614705
>>614682
Супер, бро. Спасибо!
#516 #614718
>>614427

https://www.djangopackages.com/

Под джангу много уже сделано. Например, rest framework, django mptt, админка из коробки. Всё потому что джанга гвоздями прибита к моделям, нельзя например создать апп без models.py.

Фласк - это микрофреймворк. Для новичка на нём будет легче и понятнее пилить микросайты. Но фласк по сути снимает с себя огромную часть вещей которые решает джанга (например нет моделей и слоя данных вообще, потому он и микро-, как в unix way - лучше делай что-то одно, но делай это хорошо), зато даёт тебе возможность запиливать велосипеды на базе универсальных библиотек. Например в качестве ORM можно взять алхимию или куски той же джанги. Я фласк использую когда орм мне не нужен (например бэкэндом служит sphinx+mongo).
#517 #614719
>>614529

>libtcod-cffi


Ищи где тусуют разработчики, смотри требования, репорти баг. Вероятно они тебе и пояснят что сделать. Ошибки компиляции не решаются установкой ещё чего-нибудь. И кстати у тебя не написало какую конкретную ошибку компилятор сишки высрал.
#518 #614721
>>614700

>функционыльные особенности языка? Про лямбды?


Тут вам не хаскель. Осиливай итераторы, генераторы, yield, далее filter/map/reduce и осознание что они возвращают ленивый генератор. lambda - это всего лишь однострочная форма записи функции без имени.
sage #519 #614723
>>614721

>Тут вам не хаскель


Ну ёбжежь. Нахуй мне нужен тогда этот ваш питон?
#520 #614726
Хаскель-не хаскель, а доступной литературы о лучших практиках кодинга на Питоне, вот этих выдроченных сокращениях всего и вся в понятные три строки из первоначальных пятидесяти - я как-то и не встречал особо. Разумеется все есть в доках по стандартной библиотеке, но хуй ты все это запомнишь, лол.
Пхп был пиздат своим сайтом с документацией и комментариями содержащими гору самого разного кода - тут этого нету, все ищи по гитхабам бля и хуй ты целенаправленно чего найдёшь.
Да и по стандартной библиотеке как-то инфы и не шибко много, примеры куцие совсем.
#521 #614730
>>614726
Я вот вроде бы тебя и понимаю, но ты такой хуй, что мне лень даже объяснять. Если коротко: не получится быстро и просто взять и содрать, здесь тебе не пхп, здесь всё иначе делается - оформляется в виде библиотеки. И да, тебе не нужно учить все внутренности этой библиотеки как в пхп, они здесь реально решают проблему, а не предлагают очередной бесполезный говнофреймворк делающий всё и ничего одновременно.
#522 #614731
>>614723
А нам откуда знать что тебе и для чего нужно.
#523 #614741
#524 #615074
>>613137
Рояль.
95 Кб, 1024x768
99 Кб, 1024x768
#525 #620017
>>608076 (OP)
перекатился из закрытого треда
Sup программисты!
Кун, 25 лвл, с детства хотел обмазаться вер-программированием, но все никак не получалось, сейчас же, зарывшись в личных проблемах решил осуществить свою давнюю мечту. Попросил знакомого чела научить основам, он предложил Python для начального языка, поучил какое-то время, а потом он уехал в далекие края и мое обучение закончилось. Потом я записался на курсы в Netcreacker, но не доучился, не получалось по времени посещать и я отстал от занятий.
Потом понял, что Java мне не по нраву и начал самостоятельно учить Python на codeacademy, в итоге не долго поучившись, увидел вакансию Django-программист-стажер, записался, на данный момент успешно посешал занятия, так называемое домашнее задание по Python сдал без проблем, потом был один вводный курс по Django и вот 3 января мне задали домашку, которую нужно сдать до 7 числа. Собственно с того самого дня, как мне ее задали, почти не сплю, вгрызаюсь в этот Django-гранит и читаю, читаю, но к завершению мой проект так и не близится, более того, на момент написания поста создал опять новый проект и сижу перед пустым приложением, не могу ничего сделать, в голове каша, силы на пределе, но я не сдаюсь, углубляюсь все дальше и настолько же вязну в пучине знаний.

Собственно вот я и приблизился к самому вопросу:
Уважаемые гуру, может есть у кого свободное время, чтобы выделить несколько часов мне, смиренному стажеру, чтобы помочь в создании этого дела, даже не так, помочь это мягко сказано, поэтапно рассказать, что и как делается, чтоб собрать в голове модель работы. Можно в скайпе или как удобно.
Задание такое:
создать модуль достижения целей

Пользователь должен иметь возможность добавить сколько угодно целей, у каждой из них создать сколько угодно этапов. У каждого названия должны быть название и описание, а также статус исполнения. У цели также должно быть название и описание. Статус выполнения цели должен отображаться в % в зависимости от готовности этапов цели.

Все манипуляции должны происходить через web-интерфейс..(без стилей и JS)

в пике приложу то, что я смог сделать.
95 Кб, 1024x768
99 Кб, 1024x768
#525 #620017
>>608076 (OP)
перекатился из закрытого треда
Sup программисты!
Кун, 25 лвл, с детства хотел обмазаться вер-программированием, но все никак не получалось, сейчас же, зарывшись в личных проблемах решил осуществить свою давнюю мечту. Попросил знакомого чела научить основам, он предложил Python для начального языка, поучил какое-то время, а потом он уехал в далекие края и мое обучение закончилось. Потом я записался на курсы в Netcreacker, но не доучился, не получалось по времени посещать и я отстал от занятий.
Потом понял, что Java мне не по нраву и начал самостоятельно учить Python на codeacademy, в итоге не долго поучившись, увидел вакансию Django-программист-стажер, записался, на данный момент успешно посешал занятия, так называемое домашнее задание по Python сдал без проблем, потом был один вводный курс по Django и вот 3 января мне задали домашку, которую нужно сдать до 7 числа. Собственно с того самого дня, как мне ее задали, почти не сплю, вгрызаюсь в этот Django-гранит и читаю, читаю, но к завершению мой проект так и не близится, более того, на момент написания поста создал опять новый проект и сижу перед пустым приложением, не могу ничего сделать, в голове каша, силы на пределе, но я не сдаюсь, углубляюсь все дальше и настолько же вязну в пучине знаний.

Собственно вот я и приблизился к самому вопросу:
Уважаемые гуру, может есть у кого свободное время, чтобы выделить несколько часов мне, смиренному стажеру, чтобы помочь в создании этого дела, даже не так, помочь это мягко сказано, поэтапно рассказать, что и как делается, чтоб собрать в голове модель работы. Можно в скайпе или как удобно.
Задание такое:
создать модуль достижения целей

Пользователь должен иметь возможность добавить сколько угодно целей, у каждой из них создать сколько угодно этапов. У каждого названия должны быть название и описание, а также статус исполнения. У цели также должно быть название и описание. Статус выполнения цели должен отображаться в % в зависимости от готовности этапов цели.

Все манипуляции должны происходить через web-интерфейс..(без стилей и JS)

в пике приложу то, что я смог сделать.
Тред утонул или удален.
Это копия, сохраненная 24 января 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски