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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
72 Кб, 706x590
Python Thread #753621 В конец треда | Веб
Шапка: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat
Код вбрасывать в тред через https://ideone.com/
Прошлый: >>745418 (OP)
>>756581>>758446
#2 #753701
>>753520
Да ты что?! Типа у uart/eth/milstd1553 нет протокола обмена? Стартовые, стоповые, контрольные биты и тому подобное. Так-то они все по двум проводам передаются.
>>753711>>753739
#3 #753711
>>753701
Рекомендую ознакомиться с моделью OSI для понимания различия интерфейса от протокола.
>>753718>>753739
#4 #753718
>>753711

>модель OSI


>2016


смешно

мимо CCNP, CCIE written
>>753722
#5 #753722
>>753718

>UART


>70ые


>ethernet


>90ые


>milstd1553


>70ые



Сказать то что хотел?
#6 #753739
>>753711
Вот стандарт на модель OSI: http://standards.iso.org/ittf/PubliclyAvailableStandards/s020269_ISO_IEC_7498-1_1994(E).zip

Ткни-ка, где там это различие?

Пока вижу только:

> 5.2.1.9 (N)-protocol: A set of rules and formats (semantic and syntactic) which determines the communication behavior of (N)-entities in the performance of (N)-functions.


Под это >>753701 явно подходит.
>>753751
#7 #753741
После запуска скрипта консолька нахуй закрывается, не успеваю увидеть результат. Чо делать ?
4 Кб, 372x258
#8 #753751
>>753739
Рекомендую такие простые вопросы, хотя бы, гуглить.

>При передаче сообщений оба участника сетевого обмена должны принять множество соглашений. Например, они должны согласовать уровни и форму электрических сигналов, способ определения длины сообщений, договориться о методах контроля достоверности и т.п. Другими словами, соглашения должны быть приняты для всех уровней, начиная от самого низкого уровня передачи битов, до самого высокого уровня, детализирующего, как информация должна быть интерпретирована. Такие формализованные правила, определяющие последовательность и формат сообщений, которыми обмениваются сетевые компоненты, лежащие на одном уровне, но в разных узлах, называются протоколами.


>Протоколы соседних уровней, находящихся в одном узле, взаимодействуют друг с другом также в соответствии с четко определенными правилами и с помощью стандартизованных форматов сообщений. Эти правила принято называть интерфейсом. Интерфейс определяет набор услуг, которые нижележащий уровень предоставляет вышележащему.



http://citforum.ru/nets/tpns/glava_17.shtml

В твоем компуктере интерфейс один (Ethernet) а протоколов много (POP, HTTP, SSH и прочие).
>>753763
#9 #753760
>>753741

>После запуска скрипта консолька нахуй закрывается, не успеваю увидеть результат. Чо делать ?


Скриншоть быстрее
#10 #753763
>>753751
Пиздец, ты даже не можешь прочитать то, что сам процитировал?

> Такие формализованные правила, определяющие последовательность и формат сообщений, которыми обмениваются сетевые компоненты, лежащие на одном уровне, но в разных узлах, называются протоколами.


В каком месте Ethernet не протокол по этому определению? Уровень один, узлы разные, компоненты есть, сообщения есть, правила есть.
>>753780>>753781
#11 #753780
>>753763
Ты необучаемая собака, еще раз почитай что такое интерфейс. Если эзернет уже протокол, тогда какого хуя придумали TCP/IP?
>>753790
#12 #753781
>>753763
Вот тебе, как самому необучаемому разжевано.
http://www.developing.ru/com/interface_or_protocol.html

>Следует заметить, что при описании взаимодействия в computer sciences разделяют два понятия - "интерфейс" и "протокол". Первое из них обозначает статику этого взаимодействия, т.е. что именно, в каком формате и на каком месте должен предоставлять объект. Второе обычно обозначает динамику взаимодействия - чем именно и в какой последовательности должны обмениваться взаимодействующие объекты. Это разделение существует, оно традиционно, хотя… хотя и интерфейс и протокол относятся к одному и тому же явлению. И когда их иногда смешивают в одну сущность (которую называют то "интерфейс", то "протокол") в этом нет особенной ошибки. В самом деле, чем "спецификация в пространстве" (интерфейс) отличается в своей сущности от "спецификации во времени" (протокол)?

#13 #753790
>>753780
Дебилушка, для кого пишут слово "уровень"? Понятие "абстракция" тебе хоть немного знакомо?

И вот такие люди потом пишут сетевые приложения. Неудивительно, что в отрасли кадровый кризис.
>>753799
#14 #753799
>>753790
Так, пордон, обосрался. Вкладывал в интерфейс понятие преобразование информации в физические параметры. Посыпаю голову пеплом.
>>753802>>753806
#15 #753802
>>753799
Не переживай, сомневаюсь, что тебя кто-то воспринял серьезно.
>>753805
#16 #753804
>>753741
Поставь ожидание нажатия клавиши в конце проги. Не пиши в блокноте. Запускай из cmd. Вариантов уйма.
#17 #753805
>>753802
Я был, почему-то, категорически уверен в своей версии. Хорошо что я работаю в сфере фастфуда, а не с ПО.
>>753808
#18 #753806
>>753799
Молодец. Также не забудь, что понятие "интерфейс" на самом деле общее, и любой протокол может быть частью "интерфейса" к некой системе (не в терминах модели OSI, а вообще, по жизни).
#19 #753808
>>753805
В такие моменты принято вспоминать синдром Данинга-Крюгера. Только проблема не в твоей ошибке, а в омерзительной манере общения.
>>753812>>753813
#20 #753812
>>753808
На этом форуме это простительно.
>>753821>>753883
#21 #753813
>>753808

> омерзительной манере общения


Это /зк/, здесь так заведено, к сожалению или к радости.

другой анон
#22 #753821
>>753812

>На этом форуме это простительно.


Дело не в морали или культуре поведения. Доказывать свою точку зрения оскорблениями бессмысленно.

>Это /зк/, здесь так заведено


Здесь нет правил, каждый ведёт себя как хочет и каждый волен отвечать или игнорировать, быть человеком или не очень. Нет никакого "заведено".
Но это всё лирика. Тред совсем не об этом.
#23 #753883
>>753812

Очень странный форум.txt
#24 #753886
Анон ты что-нибудь используешь для схоронения инфы с интернетов кроме закладок в браузере? Типа электронной записной книжки с каталогами?
>>753919
#25 #753919
>>753886
для всякой мелочей gnote юзаю
>>753921
#26 #753921
>>753919

> всяких

#27 #753923
Нуль в питоне и программировании.
Реально ли запилить сервер по рассылке смс-сообщений по базе номеров? Около 0.5 млн в неделю.
>>753942>>754007
#28 #753928
>>753741
В самом конце скрипта вставь input("hui")
#29 #753942
>>753923

>Нуль в питоне и программировании.


Ну на самом деле всем похуй.

>Реально ли запилить сервер по рассылке смс-сообщений по базе номеров? Около 0.5 млн в неделю.


Реально запилить.
#30 #754006
Мозгоебля с Питоном. Для некоторых прог Требует 3.5 вместо 3.5.1. Как правильно решить трабл? Даунгрейд?

Debian jessie.
>>754021
#31 #754007
>>753923
Более чем. Я могу такое сделать где то за 10к рублей. Но вот готов ли ты платить 0.5-1 млн рублей в неделю за отправку писем?
>>754377>>755080
#32 #754017
Йоу, посоны из жетбрайнса няшной инфографики завезли:
https://www.jetbrains.com/pycharm/python-developers-survey-2016/
>>754036
#33 #754021
>>754006
Поставь 3.5 и делов. Вообще ставь все версии питона что есть, они между собой не смешиваются. Главное virtual environment настрой на нужную в конкретный задаче
>>754062
#34 #754036
>>754017

> This correlates with results from other independent research showing that the number of scientific Python developers is growing steadily and is projected to catch up with web development in the foreseeable future.


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

> A large number of respondents also specified Flask as their framework of choice.


Кстати, а почему фласк такой мёртвый? Там нечего больше улучшать, что ли?

> code coverage


> never or almost never


> 46%


Вперде.
#35 #754062
>>754021

С даунгрейдом трабл, старые пакеты не дает ставить. Как решить?
>>754076
31 Кб, 1448x692
#37 #754215
Почему не работает, посоны?
http://ideone.com/4TPLeo
13 Кб, 557x531
#38 #754218
>>754215
Убрал \b, но в питоне не находит все равно почему-то.
#39 #754220
>>754215
Ах да, если конкретно что мне нужно - это заменить конечное множество слов в скобка, т.е. {привет} {как} {дела} на другие слова в скобках.
#40 #754221
>>754215
Заработало, я тупанул. Спасибо, пр.
6 Кб, 487x107
#41 #754242
Питонач, а можно как-нибудь сделать так в шаблонах Джанго, как на пике? Джанго такую хуйню не умеет?
>>754248
#42 #754248
>>754242

> {% for card_id_in_direction in element.direction_list %}

>>754251
#43 #754251
>>754248

>Invalid block tag: 'endfor'


Ошибка. А кастомный тег поможет?
>>754253
#44 #754253
>>754251
Значит проебался с разметкой, ты "%)" исправил?
>>754254>>754255
#45 #754254
>>754253
Еще мб это не массив. еlement.direction_list.__class__ показывает unicode. Но в консоль print еlement.direction_list, без кавычек "", но со скобками [], как должно быть.

Нету ошибок в разметке.
#46 #754255
>>754253
Ох, только щас увидел, заработало.
#47 #754310
Питонач, адекватно ли писать в таком виде или стоит использовать другое решение?
http://ideone.com/8p9umH
>>754325
#48 #754325
>>754310
itertools.accumulate
#49 #754332
Хочу перейти с excel на Numpy+Pandas для расчетов и построений графиков. Какой посоветуете удобный формат для хранения таблиц ну или просто строк?
152 Кб, 591x538
#50 #754346
Доброе утро программач!
Я линукс-админ и везде сейчас пишут python-python при устройстве от 70к.
Накидайте мне задач для практики.
Я все делал на баше, но крупными проектами никогда не занимался. Скрипты простые и переписывать их на питоне нет смысла.
Была мысль изучить jenkins, но что именно реализовать нет идей.
С меня как обычно.
>>754373
#51 #754373
>>754346
Для админства как раз и хватит переписать баш-скрипты на Пистоне.
Анализаторы логов и состояний сервера, рассылка отчётов и т.д., ничего сильно сложного.
Почитай ещё "Python в системном администрировании UNIX и Linux".
>>754612
#52 #754377
>>754007
Из чего складывается такая цена за отправку? Я так понимаю нужен смс-шлюз.
>>754508
#53 #754486
Реквестирую питон погромиста, знающего pyqt и умеющего в модуль os (для работы с файловой системой).
Нужно сделать простенький фронт (буквально пара форм, пара tree view, несколько кнопок), сделать несколько простых (по моему мнению) функций для работы с файловой системой и натянуть их на фронт, сделать всё это нужно до вечера. Кто может таким заняться, пишите скайп, там расскажу подробнее и о цене договоримся, если вы не альтруист.
>>754522>>754594
#54 #754508
>>754377
40-60 копеек одно смс, такие расценки встречал. Но хз, я диван.
#55 #754522
>>754486
До вечера? Во сколько должно быть готово?
>>754524
#56 #754524
>>754522
Напиши скайп, там поговорим
#57 #754594
>>754486
Если тебя устроит, что готово будет только завтра, то пиши.
Ищи в скайпе: aw!Hnonym.whiteANUS1m/yandexPUNCTUM1]kru
#58 #754612
>>754373
не хватит. ты думаешь перепишу я скрипты отправки логов и тп и это проканает?
просто смешно
книжку листал
очередной скам с маленькими примерами, которые из тебя сделаю только скрипт-киди не более того

задумался о том, как перестроить свое мышление и получать уже адекватные суммы за свое время
пока -> python угораю с os, потом думаю пилить сайт на джанго с БД (для опыта с nosql и тп)
>>754694>>755079
#59 #754694
>>754612
Вот, сам же всё знаешь.
#60 #754855
петян, в чём главные отличия static функции от class функций?
>>754876
#61 #754876
>>754855
Статическая потому и статическая, что не зависит от текущего состояния объекта. Там даже self не передается. Удобно для того, чтобы какую-то функцию держать внутри класса, потому что по логике она принадлежит ему.

Методы класса - первый параметр cls - ссылка на сам класс. Можно использовать например для AClass.get_all() или че нить в этом роде.
>>754901>>755100
#62 #754901
>>754876
петян, а вот, допустим, я написал обёртку вокруг мутагена, которая будет возвращать список тегов аудиофайла. и хочу использовать её как "инструмент" без создания инстанций. мне заморачиваться и делать всё static? то есть, class функции будут кошерны только тогда, когда есть объекты класса и к ним всем нужно что-то применить?
>>755100
#63 #755031
Сап, Питонач. Потихоньку вкатываюсь к вам. В факе советуют PyCharm. Я же уже привык к Visual Studio и хочу спросить что вы думаете о Python Tools? Пригодно ли оно для разработки?
#64 #755037
Антоха, в чём разница между такими классами?

https://ideone.com/xvpE0C

Первый - это темплейт, который мне предлагает использовать Sublime Text, когда я начинаю писать новый класс. Второй - это если я пишу сам.

В чём там охуенность от наследование от объекта и вызова суперкласса?
>>755040
#65 #755040
>>755037
так оно же и так будет от object наследоваться
>>755050>>755051
#66 #755050
>>755040
ok. могу теперь спокойно спать.
sage #67 #755051
>>755040
От object оно наследуется только в третьем питоне, во втором питоне без указания наследования от object будет создаваться класс старого типа.
>>755054
#68 #755054
>>755051
Спасибо за исторический экскурс.
#69 #755069
что почитать на русском (и или в интересной, нескучной манере или кратко) о хорошем тоне в оформлении кода, регистры и конвенции в именах классов/функций/переменных, камельКейзы, __префиксы __типов?

что там в пистоне-то, а? от PEP8, в его форме, я хочу стреляться.
>>759933>>760907
#70 #755079
>>754612

>сайт на джанго с БД (для опыта с nosql и тп)


Думаю, из каробки не заработает.
В любом случае, вероятно, для опыта в nosql джанго не лучший выбор
>>755105
#71 #755080
>>754007

>Более чем. Я могу такое сделать где то за 10к рублей.


че так дорого блять?!
В нубокнижке видел в качестве примера. Правда не сервер, а со своего компьютера.
>>755082
#72 #755082
>>755080
Дорого, потому что качественный код + документация + техническая поддержка сроком на год.
>>755087
#73 #755087
>>755082
Напиши анончику за так, чего ты.
>>755088>>755089
#74 #755088
>>755087
Отсоси анончику за так, чего ты.
>>755098
#75 #755089
>>755087
Я не разрабатываю программы сам, я организовываю процесс разработки ПО. Под этот проект я могу выделить 2-3 Senior-разработчиков, опытного ПМ с PMP сертификацией и несколько Quality Assurance специалистов.
>>755098
5 Кб, 335x383
#76 #755090
Господа Змии, написал бота для дискорда, хочу красивую панельку под оного. Беда в том что я истекаю жизненными соками по дизайну metro и желаю пикрил, но коварный ткинтер меня истязает разбросанной по всей сети документацией, а других альтернатив я не знаю.
Halp
#77 #755098
>>755088
Всегда сосу бесплатно. Ведь иначе я был бы просто шлюхой.

>>755089
Мне подходит. Однако, я настаиваю на скайп-интервью с командой чтобы определить имеются ли у них необходимые софт-скиллз
#78 #755100
>>754901
>>754876
В instance_of_AClass.class_method(), если что, тоже будет первым аргументом передан класс.

>>754901
А зачем тебе класс вообще, если всё в статике будет? Для неймспейса можно просто модуль отдельный сделать.

>то есть, class функции будут кошерны только тогда, когда есть объекты класса и к ним всем нужно что-то применить?


класс-функции нужны тогда, когда тебе нужно производить какие-то манипуляции с классом. https://ideone.com/3vSieQ
>>755657
#79 #755105
>>755079

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

что посоветуешь тогда для изучения python?
в перспективе смотрю на девопс направления из-за опыта в админстве
#80 #755120
>>755105

>что посоветуешь тогда для изучения python?


я вообще нуб-мимо-качусь.
Просто всегда было представление что джанго это хардкорный сикель
#81 #755121
>>755105
Я вот залупу всякую учу, но большую часть времени воюю с документацией и модулями. Мудрые парни говорили что просто стоит взять дело и дрочить его, параллельно набираясь опыта.
Я решил делать все что в голову взбредет, бота, к примеру для чятиков и все такое. Потом свой почтовый сервер, файловый менеджер. Per aspera ad astra.
#82 #755122
>>755105
Прямо сейчас захотел нотификации о сообщениях из кудахтни, sperma10 style.
Можешь хоть двощ парсеть, лишь бы делать.
#83 #755265
Установил последнюю версию пайтона на винду, установил Sublime Text 3, который не указывает на ошибки, даже если написать откровенную хуйню. Либо пишет что-то вроде [Finished in 0.1s], либо текст из файла Build System
В чем проблема?
>>755275
#84 #755275
>>755265
REPL
гугли
>>755297
#85 #755279
Джанганы, как сделать фильтр contains по множеству значений, что-то типа

> Model.objects.filter(value__contains=('value1', 'value2'))


?
>>755282
#87 #755283
>>755282
Действительно, хуево гуглил, извиняюсь.
#88 #755297
>>755275
Да я мудак на некрокомп установил х64 версию
Снёс, поставил х32 и всё работает
Но всё равно спасибо:3
#89 #755306
Аноны, как в PeeWee назначить полю IntegerField автоинкримент в модели??
17 Кб, 647x356
#90 #755377
Как импортировать библиотеку? Кинул в Libs в папку питона, так выдает пикрелейтед. Или я правильно кинул и тут другое?
>>755420>>755475
#91 #755420
>>755377
pip install xxxxx
Или скачать в папку внутри проекта, проверить что бы внутри папки был файл __init__.py можно пустой создать и импортировать как обычно через from xxxxx import yyyyyyy
#92 #755471
Анон, объясни зачем объявлять для методов джанги super?

Чтобы родительский класс корректно работал?
#93 #755475
>>755377

decorators
120 Кб, 910x682
#94 #755588
Ребята, хочу для себя заделать маленький сервис на Джанго. В Джанго я практически не врубаюсь, потому хочу попросить помощи: я буду итт по ходу дела спрашивать очень тупые вопросы, а вы, если есть желание - мне помогать.
На счет детализации помощи мне пока сложно представить, но буду благодарен за любые советы по теме

И так, есть презентация. Есть видесъемка как презентацию ведет мой шеф.
Мне ее нужно заучить.
План такой:
три поля
1 - картинка слайда
2 - видео где шеф рассказывает о слайде, сам нарежу без проблем
3 - стенография его речи в маркдаун поле
----
Всего две URL - slides list и slide view

И так, с чего начать?
python manage.py startapp seminar

Что дальше делать?
>>755625
#95 #755625
>>755588
Ты это собираешься делать в целях изучения django?
>>755637
#96 #755637
>>755625
Ну я хочу двух зайцев одним выстрелом. Но пока слабо представляю как.
>>755643
#97 #755643
>>755637
Что-то твой замысел не слишком подходит для изучения django, как мне кажется. Тут и статического html достаточно.
Ну начни с модели, например, определись что и как будешь хранить в базе данных и опиши это в файле model.py.
>>755655
#98 #755655
>>755643
Ну беда в том что я после ~5 туториалов и книженций ровным счётом нихуя не понимаю в джанго. Меня это даже бесит. А сервис просто нужный вот прямо сейчас, разумеется мне и vlc + pdf reader + notepad могли бы заменить, или например встроенные в паверпоинт аннотации к слайдам.
Ну это всё лирика, окей.

И так, models.py:
----
class Slides:
....slide_n = models.IntegerField()
....pic = models.ImageFiled(upload_to='images/')
....video = models.CharField()
....speech = models.TextField(blank=True)

....def __str__(self):
........return self.slide_n

python manage.py makemigrations
python manage.py migrate

Нигде не ошибаюсь? Что теперь делать?
>>755660
#99 #755657
>>755100

>А зачем тебе класс вообще, если всё в статике будет? Для неймспейса можно просто модуль отдельный сделать.



а не много ли это ебатьни? этож нужно отдельную директорию заводить и __init__.py файл, или я путаю?
>>755659
#100 #755659
>>755657
Я честно тебе скажу - всё что я пишу - я пишу глядя в те туториалы и примеры из книжек, что делал. Можно ли обойтись без модели? Хуй его знает. Не встречал такого.
#101 #755660
>>755655

>pic = models.ImageFiled(upload_to='images/')


А как ты будешь изображения в базу добавлять?

>video = models.CharField()


Как ты в этом поле будешь видео хранить?
>>755662
#102 #755662
>>755660
Всё через формочку загрузки, конечно
Видео думал загружать и в чарфилде хранить урл

А ты бы как порекомендовал?
>>755664
#103 #755664
>>755662
Есть, например, класс FileField, вроде как, родительский класс ImageField. Его можно использовать.
>>755665
#104 #755665
>>755664
Разумно, действительно.
Картинку в ИмейджФилд, видео в ФайлФилд.
#105 #755680
Что за еботня? Почему мне bytes[N] возвращает int, а не снова bytes? Мне каждый раз типы заново приводить что ли?
>>755750
#106 #755748
Прочитал dive into pyhton, пилю борду на джанге.

Как сделать сквозную нумерацию для 2-х моделей? Чтобы для постов и тредов был счетчик по времени создания, но не отдельный для каждой таблицы, а общий. Как это сделать?

Сейчас сделал посты и треды от абстрактного класса. посты один к одному с тредами через тред_id.
>>755756
sage #107 #755750
>>755680
Потому что если из многих байтов взять один, будет один байт, представленный int в диапазоне от 0 до 255 включительно. Хочешь bytes или bytearray - делай слайс из одного элемента: [N:N+1].
#108 #755756
>>755748
Сделай модель поста и от неё наследуй модель треда. Или наоборот. Тогда id у них будут последовательно идти. Ещё можешь сделать одну модель и в ней сделать флаг, что это тред, а не пост.
А вообще про наследование моделей читай доку: https://docs.djangoproject.com/en/1.9/topics/db/models/#model-inheritance
>>755941
#109 #755941
>>755756

Спасибо. Только теперь секас с первичным ключом при наследовании от того же класса-родителя.
>>755949
#110 #755949
>>755941

А все разобрался.
Нужно

>null=True, blank=True

#111 #756105
гайз, есть csv файл, в нем несколько листов с данными (first, second и тд)
нужно записать в этот файл данные в конкретный лист этого файла
как?
#112 #756244
Сап, посоны, юный говнокодер в треде. У меня есть прога, которая сохраняет настройки из текстбоксов в файл. В одном из текстбоксов хранится пароль. Мне нужно две вещи:
1)Чтобы в текстбоксе вместо пароля отображались звёздочки, но сам пароль нормально там хранился и считывлася. Интерфейс делал с помощью QtDesigner, но тогда это было не нужно, поэтому я не обратил внимания, но вангую, что должна быть подобная настройка там. Можете просто сказать да/нет, я сам найду, если что.
2) Мне нужно, чтобы при сохранении в файл строка с паролем как-то шифровалась, а то палево же. Ну и сответственно, чтобы расшифровывалась при загрузке из файла во время перезапуска программы. Реквестирую название шифра, который лучше подходит для этой цели и библиотеку, которая содержит готовую реализацию этого шифра.
>>756573>>757442
#113 #756573
>>756244
2) AES. И тебе нужно будет запрашивать у пользователя пароль, которым будет шифроваться инфа.
#114 #756581
>>753621 (OP)
Player1_Choice = raw_input ("Player 1?")
while Player1_Choice != ('paper' or 'rock' or 'scissors'):
print "This is not a valid object selection"
Player1_Choice = raw_input ("Player 1?")
print "Player1 choose", Player1_Choice

Как в условии while правильно проверять переменную Player1_Choice на равенство стрингам rock, paper или scissors? У меня программа срабатывает только на paper, а на остальные две выдает "This is not a valid object selection".
>>756592
#115 #756592
>>756581
player1_choice not in ['rock', 'paper', 'scissors']
>>756614
2 Кб, 354x60
#116 #756614
>>756592
Посоны!
Учу регулярки, и непонимат!
Под-задача - выхватить из начала строки весь текст до первой открывающей или закрывающей скобки (если он там есть, т.е не менее одного символа).
То, что на пикрилейтед - не работает, и не могу понять почему. Точнее работает, если в куске текста перед скобкой строго больше одного символа. Хотя "+" - это же означает "один или больше".

В чем дело?
>>756715
1 Кб, 195x40
#117 #756715
>>756614
Выражение в скобках не исключает символ из выборки. Оно капчерит любую не скобку. \w+ выбирает подстроку не n длины, а n - 1, последний символ идет из выражения в скобках. Чтобы оно сработало, n должно быть n > 1.
Лучше сделать обратный захват.
>>756897
2 Кб, 369x272
#118 #756719
Анончик, как настроить панель (Window) в GTK+, чтобы запущенные приложения (например, тот же deadbeef, libreoffice и т.д.) не выходили за её пределы? Тестю в openbox.
>>756792
#119 #756792
>>756719
Попробуй ограничить область screen (т.е. monitor.height -= panel.height), в awesome vm, например, похожим образом это делается.
https://developer.gnome.org/gdk3/stable/GdkScreen.html#gdk-screen-set-resolution
>>756898
#120 #756834
pycharm сам вырубается через 30 минут и просит заплатить. Что делать?
>>756846>>756850
#121 #756846
>>756834
Ставь Community едишон.
#122 #756850
>>756834
если студент - получить образовательную лицуху
#123 #756865

> for i in l.items(): print(type(i))


l это словарь.
Он выводит много раз <class 'tuple'>
Как сделать чтобы он не для всех элементов тип выводил, а только для одного?
#124 #756870
>>756865

> for a, b,c,... in l.items(): print(type(b))

#125 #756871
>>756865
У тебя переменная итерации одна, а итерируешь словарные пары (items), они всегда будут tuple.
Что хотел-то?
>>756876
#126 #756874
>>756865

>не для всех элементов тип выводил, а только для одного?


Каких всех?? Какого одного??
>>756879
#127 #756876
>>756871
Хотел узнать какого типа элементы пара ключ значение в словаре хранятся. Словарь или tuple. Нашёл только такой способ. items возвращает все элементы словаря. А как взять только 1 и посмотреть его тип не знаю.
>>756877
#128 #756877
>>756876

> Словарь или tuple


список или tuple
#129 #756879
>>756874
В словаре куча элементов. Это пары ключ-значение. items возвращает набор список может, но питон говорит что это какой-то особый тип всех элементов словаря, а for по одному их берёт и тип каждого выводит. А мне нужно только 1 взять и только 1 раз этот тип вывести.
>>756884
#130 #756881
print(type(l[l.keys[0]]))

или

t = set()
for i in l.values():t|=type(i)
print(t)

В первом случае получишь тип первого значения в словаре, во втором - всех.
>>756884
#131 #756884
>>756879
Сам нашёл.

>>> type(list(l.items())[0])


<class 'tuple'>

>>756881

>l.keys[0]


>TypeError: 'builtin_function_or_method' object is not subscriptable


И он выведет тип не всей пары, а только значения.
>>756887
#132 #756887
>>756884

> >l.keys[0]


> >TypeError: 'builtin_function_or_method' object is not subscriptable


Мой обосрамс - list(l.keys(0))[0]

>И он выведет тип не всей пары, а только значения.


А пара всегда будет tuple. Смысл ее проверять?
>>756890
#133 #756890
>>756887

>Смысл ее проверять?


Потому-что пока не проверил не узнал.

>>756887

>list(l.keys(0))[0]


Говорит у keys нет аргументов. Но всё равно спасибо.
>>756892
#134 #756892
>>756890
Опечатка, сорри
list(l.keys())[0]
14 Кб, 507x127
#135 #756897
>>756715
Что-то я не понял. Этот код захватывает скобку вместе с фрагментом. А можно, чтоб без скобки, или проще самому отсекать через span?
>>756920>>757212
#136 #756898
>>756792
А как в этом 'Gdk.Screen.set_resolution()' прописывать значения? int он не принимает, а в доках хуй пойм что.
>>756913>>757003
#137 #756913
>>756898
Забей, это не то, gdk_screen_set_resolution только dpi для шрефтов устанавливает, вот это по делу - http://stackoverflow.com/questions/11806203/how-to-make-a-toplevel-perform-like-a-panel , и пример - https://gist.github.com/johnlane/351adff97df196add08a .
sage #138 #756920
>>756897
Все проще, вроде бы.

>>> re.search('^[^()]+', '123123123123()').group(0)


'123123123123'
#139 #756933
Можно ли добавить к строке без ее предварительного объявления?

Например:
s = '' #вот эта хуйня напрягает
for i in range(10): s+=str(i)

Компрохеншены с ''.join не хочу по простой причине - там получится не читаемое говно с горизонтальным скроллом. Еще как можно?
>>756937>>756938
#140 #756937
>>756933
Раз уж пишем читаемый говнокод, а не человеческий, то можно и так.

>s = '0'


>for i in range(9): s+=str(i+1)

>>756938>>756940
#141 #756938
>>756933
Джойнить можно через перенос строки - получишь вертикальный скролл.
А добавлять без предварительного объявления нельзя. Питону же не понять к чему ты добавлять будешь, а в кишках для каждого типа += обрабатывается по-своему. Можно определить для своего типа += как угодно, даже так, что оно тебе вместо реального добавления будет письма на почту кидать.

>>756937
Python-way:
s = " ".join(map(str,range(10)))
#142 #756940
>>756937
Целая строка для простого объявления нарушает мое чувство прекрасного и раздувает сорец.
>>756942
#143 #756942
>>756940
Пиши однострочный генератор. Или прячь все в функцию.
#144 #756946
Вообще надо было на перле делать. Все в одну строку, красота.
>>757015
#145 #757003
>>756898
Больше спасибо, анончик.
#146 #757015
>>756946
На питоне тоже можно в одну строку.
#147 #757212
>>756897
Да, ошибка, вместо .+ надо \w+
В любом случае, тот вариант, который выложили, лучше.
#148 #757442
>>756244
1. http://doc.qt.io/qt-5/qlineedit.html#EchoMode-enum
2. pycrypto (может чего поновее есть)
#149 #757514
Есть принципиальное различие между qt4.8 и qt5.6? Стоит заморачиваться и писать на 5.6 по ангельской доке без примеров или можно все сделать на 4.6 без заморочек с вагоном готового кода?
>>757625
5 Кб, 160x151
#150 #757577
Анончик, где можно найти толковую документацию по "Wnck"? А именно по connect.
>>758098
#151 #757625
>>757514
5.6 бери конечно. Базарю ещё захочешь.
#152 #757704
В общем кто планирует проходить офф. уроки по фласку 0.11, там ошибка как обычно, step 2, в конце, когда мы делаем импорт, мы дописываем разрешение к flaskr (.py), иначе будет ошибка, и дальше не пройдет инициализация базы данных.
>>757722
#153 #757722
>>757704

>разрешение



расширение, тфу ты
#154 #757929
Найти среднее арифметическое суммы элементов последовательности с 1 по 100(включительно).
Собственно я решил запилить в пистоне:
def average(values):
return sum(values) / len(values)

при range(1, 101) это 50.5, list выводит с 1 по 100
Собственно это верно ? Я тупой если что и рукой выписывал на листке (1+99)+(2+98)...+50+100.
#155 #757931
>>757929
пидор харкач убрал знак табуляции.
#156 #757949
>>757929
Просто запомни: у range верхняя граница не берется. Кодеры считают от нуля до N-1, и ты учись так же.
>>757958
#158 #757958
>>757949
Благодарю.
>>757950
Ого, как все просто оказывается, спасибо.
#159 #757968
Скомпилил openblas.dll (там же создался openblas.a) под вин, там же появился, указал в настройках Theano путь к папке где эти 2 файла, вроде все подключилось. Удалил эти 2 файла, но Python почему-то не ругается на это и каким-то образом их находит. Ошибки начинаются только если я укжу другой путь к openblas где его нет.
#160 #758000
Кто нибудь с помощью pyqtdeploy делал пакеты?
>>758192
#161 #758098
>>757577
Просто набери help(wnck) там есть список event'ов. Например у screen есть
#| Signals from WnckScreen:
#| window-manager-changed ()
#| active-workspace-changed (WnckWorkspace)
#| window-stacking-changed ()
#| window-closed (WnckWindow)
#| workspace-created (WnckWorkspace)
#| workspace-destroyed (WnckWorkspace)
#| application-opened (WnckApplication)
#| application-closed (WnckApplication)
#| class-group-opened (WnckClassGroup)
#| class-group-closed (WnckClassGroup)
#| background-changed ()
#| showing-desktop-changed ()
#| viewports-changed ()
#| Signals from WnckWindow:
#| name-changed ()
#| workspace-changed ()
#| icon-changed ()
108 Кб, 736x999
#162 #758119
Ребята, выручайте. Пару дней назад поставил scrapy с помощью pip, все нормально работало.
Сегодня появилось время снова поиграться, но хуй там плавал - выдает вот такую вот ошибку, блять.

# scrapy
Traceback (most recent call last):
File "/usr/local/bin/scrapy", line 7, in <module>
from scrapy.cmdline import execute
File "/usr/local/lib/python2.7/dist-packages/scrapy/__init__.py", line 34, in <module>
from scrapy.spiders import Spider
File "/usr/local/lib/python2.7/dist-packages/scrapy/spiders/__init__.py", line 10, in <module>
from scrapy.http import Request
File "/usr/local/lib/python2.7/dist-packages/scrapy/http/__init__.py", line 11, in <module>
from scrapy.http.request.form import FormRequest
File "/usr/local/lib/python2.7/dist-packages/scrapy/http/request/form.py", line 14, in <module>
from scrapy.utils.response import get_base_url
File "/usr/local/lib/python2.7/dist-packages/scrapy/utils/response.py", line 10, in <module>
from twisted.web import http
File "/usr/local/lib/python2.7/dist-packages/twisted/web/http.py", line 98, in <module>
from twisted.internet import interfaces, protocol, address
EOFError: EOF read where object expected

Гугл насиловал, пробовал разные варианты(удалять, переустанавливать, ставить через easy install, собирать с исходников) - результат нулевой. Еще пробовал поставить скрапи в virtualenv, но у меня то ли не получилось правильно это сделать, то ли просто никакого толку от этого нет.
Как решить эту проблему? Подскажите хоть, куда копать.
Ось - Linux Mint 17.3 Rosa
#163 #758192
>>758000
Пробовал, ничего не получилось.
>>758830
#164 #758247
>>758119
http://doc.scrapy.org/en/latest/faq.html

> Scrapy is supported under Python 2.7 and Python 3.3+. Python 2.6 support was dropped starting at Scrapy 0.20. Python 3 support was added in Scrapy 1.1.



Что там у тебя с версиями?
>>758248
#165 #758248
>>758119
>>758247
А, пардон, у тебя 2.7.
Но все равно, есть ли смысл? На тройке пробуй.
>>758263
#166 #758263
>>758248
На тройке та же беда.
>>758264
#167 #758264
>>758263
Я бы попробовал отладку через какой-нибудь PyCharm запустить, посмотреть, во что конкретно оно упирается, по трейслогу сам с ходу не соображу, что конкретно ему в twisted не нравится.
>>758404
#168 #758287
>>758119
попробуй через easy_install поставить
>>758404
#169 #758329
Почоны, сильно не ссыте на голову, никак не могу отрендерить данные в шаблон на джанге.
http://pastebin.com/rxB8YUhZ
Принтую context - там все норм, список со вложенными словарями. А в шаблон ничего не выводит. Выходит, как-то не так переменную указываю?
>>758422
#170 #758404
>>758264
Братишка, я нуб не совсем понимаю, как это сделать... Черкани фейкомыло или жабу, если есть время поговорить.

>>758287
Я же написал, что пробовал уже :) Безуспешно.
#171 #758422
>>758329
У тебя в categories список со списков а не словарей, [] в append убери.
>>758448
#172 #758446
>>753621 (OP)
Насколько Jython сильно отличается от Python?
Библиотеки и экосистема насколько другие?
>>758549
#173 #758448
>>758422
Добра тебе, бро
#174 #758488
>>758119
Попробуй
sudo apt install --reinstall python-twisted-core
>>758670
#175 #758549
>>758446
Python - вполне живой, Jython - довольно мёртвый.
>>758590
#176 #758590
>>758549
Насколько мертвый? Что-то на нем написать можно если надо JVM, или он совсем-совсем заброшен?
#177 #758613
Я в смятении - учить ветку 2x или 3x. Есть какая-нибудь вероятность, что Renpy перейдет на ветку 3x?
>>758620>>758628
19 Кб, 336x434
#178 #758614
Анончик, а в WNCK есть функция сворачивания окна? Есть такой вариант, но он их не свёртывает, а лишь развёртывает.

http://pastebin.com/WXm2prk7
#179 #758615
Говняшно?
https://ideone.com/gaXYlP
>>758617>>758635
#180 #758617
>>758615
Лютейший кал.
#181 #758620
>>758613
3.0 вышла в 2008 году, сейчас в бете 3.6. Через 3-4-5 лет есть шанс увидеть бету 4.0. Ренпидоры сидят на второй. Найс.
За редкими исключениями код третьей ветки исполняется на второй. Кури http://python-future.org/compatible_idioms.html
>>758631
#182 #758628
>>758613
Никакой принципиальной разницы между 2 и 3 нет. Никакой. Нет. Чуть сломали синтаксис, оторвали какие-то маргинальные фичи, вот тебе и вся революция. Просто эти изменения внесли очень неудачно, собрали все грабли, какие можно было, поэтому столько шума и боли. Но никакой "ветки 2x" не существует, это просто устаревшая на шесть лет версия питона, в которой нет asyncio, function annotations, кучи библиотечных плюшек и других вещей, присущих развивающемуся языку.

Иногда в силу внешних обстоятельств необходимо работать с устаревшей версией языка, но прицельно её учить - это какая-то хуйня.
>>758631
#183 #758631
>>758620
>>758628
Большое спасибо.
#184 #758635
>>758615
О боже.

words = s.split()
random.shuffle(words)
print(' '.join(words))
#185 #758670
>>758488
Не помогло((
#186 #758728
>>758119

Не знаю почему и какого хуя, но я удалил в с помощью pip`ки twisted и все заработало)) Теперь боюсь что-либо сломать

Спасибо за ответы.
#187 #758825
анчоусы, стоит ли в джанге делать комментарии и лайки через контенттайпс? Какие могут быть проблемы?
#188 #758830
>>758192
I know that feel.
#189 #758923
Питоны
помогите плиз
есть страница сайта, с которой я достал все ссылки, они там и относительные и глобальные
как мне относительные (т.е. которые с точками, двоеточиями) переделать в глобальные без боли?
>>758927>>759037
#190 #758927
>>758923
for url in urls:
....if not url.startwith('http'):
........url = 'http'+url
>>758928
#191 #758928
>>758927
лажанул чутка, всамом низу конечно допиши 'http://нужныйтебедомен.ру/'
#192 #758959
где взять задачки для питона 3.Х(желательно похожие на то с чем приходиться работать программистам а не олимпиадные) на питоне, нашел это http://learnpythonthehardway.org/book/index.html но тут уже в самом начале пишут что используется питон 2.Х
#193 #758962
>>758959
хардвей говно распиаренное потому что бесплатное, но дико бестолковое с претензией на мотивационное говнище. лучше automate the boring staff или хуй знает, think python, или тупо переписывай баш-скрипты на питон, ну или http://blog.programmersmotivation.com/2014/07/09/list-projects/
>>758966
#194 #758966
>>758962
спс, насчет баша, я его хуже питона знаю, решил просто начать с питона осваивать программирование
>>758975
#195 #758972
>>758959

> задачки для питона 3.Х(желательно похожие на то с чем приходиться работать программистам а не олимпиадные)


Рецепт очень прост и универсален. Берёшь какую-нибудь существующую программу и переписываешь её с нуля. Не обязательно всю, конечно, - столько, сколько сочтёшь нужным.

К примеру, начни с Unix-команд cal(1) и tar(1), wget. Дальше, если хочешь в веб - напиши свою имиджборду, целишь в десктоп - напиши свой пейнт, неровно дышишь к байтам - напиши свой FTP-демон. Ну и так далее. Подключи фантазию.
>>758976
#196 #758975
>>758966
вбиваешь в гугл BEST SYSADMINS BASH SCRIPTS
охуеваешь от колличества ебанутого говна, нужного сисадмину
примерно понимаешь что оно делать должно
пишешь это на питоне

Ты и жаву, и какой-нибудь хаскель, и лисп так сможешь портировать (хотя наверное лисп пока нет, без лямбда-выражений во всяком случае)
>>758976
#197 #758976
>>758972
>>758975
я от силы неделю учу пайтон, мне для начала попроще что-то
>>758978>>758985
#198 #758978
>>758976
Тогда чего голову морочишь?
codecademy - byte ... - dive ... - (доусон или лутц программируем) + лутц изучаем - think python
вот программа новичка проверенная каждым наверное вторым итт
>>758982>>758996
#199 #758982
>>758978
спс, засейвил завтра начну с академии, кстати вижу ты анон добрый, может скажешь чем в основном занимаются питонисты, в отличии от прогеров на других языках?(кроме сис.администрирования) о использовании питона в разных штуках(типа ютуба) слышал, но картины работы с питоном в голове все равно не нарисовал
>>758990
#200 #758985
>>758976
Ну, скажем, минимальная версия cal(1) - это как раз где-то на уровне задачки из учебника будет (разумеется, модуль calendar использовать нельзя). Простейшие аналоги tar и wget - тоже совсем не сложно.
>>758987>>758991
#201 #758987
>>758985

>cal(1)


что это? гуглил - не нашел ничего связанного с IT
>>758989
240 Кб, 1320x748
#203 #758990
>>758982
1. Веб-дев
Наверное больше всего кодеров на планете сейчас занимаются этим. В том числе и на питоне
2. Гуй-приложения на скорую руку
Есть уже какая-то бд, которую сделали непойми чем и использовали непойми как, но старый java-клиент чего-то перестал подргружать нужные модули из инета и запускаться? нехуй делать, слеплю Гале Петровне из бухгалтерии говно с десятью полями и двумя кнопками
3. Прототипирование - питон исписан энтузиастами вдоль и поперёк, поделки существенно разнятся как по качеству, так и по скорости - но другого такого языка, на котором бы ты за вечер мог слепить полноценное приложение из 10 левых библиотек пока нету
4. Сисадмининское говно
Всюду где для баша нехватило готового велосипеда - этот велик есть уже созданный на питоне, осталось только прикрутить
5. а) Биг дата и прочие машин лёрнинг
Стильно, модно, молодёжно
5. б) научные штучки и вычисления
Опять таки валом всяких интересных библиотек и большая часть из них - уже в обёрточке и для питона есть. Ну и народу нравится потому что просто

Вот как-то так я вижу
Держи заодно cal
>>758995
#204 #758991
>>758985
Если с параметрами запуска аналогичными лепить то очень даже есть где разгуляться и в cal'е
>>758992>>758997
#205 #758992
>>758991

> минимальная

>>758994
#206 #758994
>>758992
И хули тебе что сказали минимальная? Слишком просто? - Так усложни себе задание
>>758997
#207 #758995
>>758990
cпс, а насчет кол, он должен типа точно как и в баше работать? я имею ввиду после запуска ./cal.py выводить реальную дату в таком же виде?
#208 #758996
>>758978
Анон, вот, я мимокрокодил, вообще умею в пхп (так себе умею, просто сайтики пишу и задачи иногда решаю разные). Но у меня есть баранья упертость. Стоит ли читать "Изучаем питон" Лутца? Я не люблю книги, где отсутствует интерактив, то есть отсутствуют примеры, задачи, реальный код. "Изучаем" - простой справочник, но подробный, а я справочники не люблю. Если научну с Доусона, не прогадаю? Я ищу книгу, где будет объясняться синтаксис, какие-то примеры и создание приложений. Ну, "с нуля до норм парня". У Доусона вроде с нуля объясняется, на примерах. Из аналогов Доусону так понял только Лутц "Изучаем"+"Программируем". Но Доусон 400 страниц и есть ИНТЕРАКТИВНОСТЬ, а у Лутца ебать талмуды по 1к страниц каждый, еще и только в одной книге есть нормальный интерактив. В общем, дай совет, анон.
>>758999>>759000
#209 #758997
>>758994
Всё смешалось в доме облонских. Это я предложил cal и я говорю, что его можно сделать настолько маленьким, насколько хочется. В простейшем случае он может никаких аргументов на командной строке не принимать, выводить текущий месяц в фиксированном формате и всё. А уже потом, если хочется разгуляться (>>758991), можно заняться впиливанием разных опций.
#210 #758999
>>758996

> умею в пхп


> есть баранья упертость


Абсолютно похуй, что и в каком порядке читать. Начни с официального туториала, дальше гугли, бейся об стенку и т. д.

Это вообще какой-то удивительный миф, что для освоения языка надо выбрать "правильную" книгу. А то у нас мозги такие нежные, ох, что от одного неуместного слова сразу скисают.

Я все языки и технологии в сознательном возрасте начинал учить с официальных доков.
>>759002
#211 #759000
>>758996
Лутц есть справочник и "программируем"
Справочником надо пользоваться как справочником - полистать для общего ознакомления, что непонятно прочитать, если чего потом непонятного найдешь - тоже можешь глянуть.
Программируем Лутца - чуть для дебилов
Доусон тоже чуть для дебилов, только более игривых. Может кому и нравится писать текстовые квесты, я хз, но по мне так это скучно.
С другой стороны со своей задачей все по полочкам разложить Доусон лучше справляется.

Think Python - крутяк невероятный, он уже способен научить тебя писать реальные вещи, но врубиться сходу в него не получится скорее всего - я сам ещё штук 10 задний из него не понял как делать, а читал я его пол года назад.
В любом случае это не значит что ты не сможешь писать что-то и до Синка, но после него - почти наверняка.
А доусона/программируем Лутца нужно просто пережить
#212 #759002
>>758999
Официальные доки - по стандартной библиотеке. Она великолепна, как и доки, но проебать за ее чтением что-нибудь из того что на первых порах было бы нужнее - проще простого. Взять хотя бы итертулз те же.
По стандартной библиотеке тоже классная книга есть - python standard library by example, но имхо всем этим надо заняться уже после набитых шишек и даже Синк Пайтона
#213 #759037
>>758923

>>> from urlparse import urljoin


>>> urljoin('http://www.cwi.nl/~guido/Python.html', 'FAQ.html')


'http://www.cwi.nl/~guido/FAQ.html'
#214 #759078
Всем чаю, посоны! Есть два объекта на сикуэль алхимии, связь один-к-одному, как кошерно удлаить связанный объект?
>>759137
#215 #759119
>>758959
codingame.com - типа-ололо-геймдев с блекджеком и шлюхами, примерно сотня основных задач, 26 языков (второй и третий питоны считаются за разные), десматчи с другими кодерами, ачивки, в том числе за количество решений на разных языках.

Гольфить там весело: сишники и джаверы пишут за три минуты решение на 200-300 знаков, ты выжимаешь из себя все что знаешь на питоне и за пять-семь минут делаешь 40-50 знаков, приходит рубипидор и кидает 30 знаков - хуй тебе, а не первое место. Или например пока ты вникаешь в условие задачи, местный папка сабмитит решение за 20-30 секунд.
#216 #759137
>>759078

>Всем чаю, посоны! Есть два объекта на сикуэль алхимии, связь один-к-одному, как кошерно удлаить связанный объект?


загугли cascade delete-orphan
#217 #759212
Ребят, каким методом http я могу узнать, что по url'у у меня лежит не страница, а файл?
>>759217>>759824
#218 #759217
>>759212
Тебе веб-сервер так или иначе все что угодно отдает каким-то потоком байт, просто браузер по mime определяет, что с этим делать. Как поймал заголовок с HTTP 200 - смотри в нем ключ Content-type.
>>759220
#219 #759220
>>759217
spasiba
#220 #759334
Ананасы, нам тут в команду нужен ещё один Python Django разраб на удалёнку - полный день. От 45к.

Высоконагруженный проект, коллектив без мудаков, не стартап. Я сам фронт, лол, ищу ещё одного фронта, но если кто работу ищет - перенаправлю к тимлиду по бэку.

james.variouD9xsANUSy>K]andexPUNCTUMrLJ1u
#221 #759389
>>759334
Вопрос уровня наивного дебила: а доучите? То я чутка по джанге знаю, но там не то что до нагруженного проекта, а вообще до пректа ещё месяц-два практики
Зато готов пахать в половину дешевле и подписаться к вам минимум на год-полтора.
#222 #759393
>>759334
Фронт на чём?
#223 #759533
Питоняши, как лучше деплоить джанго приложение на удаленный хост? Через fabric или всякие ансиблы, чифы и прочее. Уже второй день разобраться не могу, куча всяких сервисов для деплоя но мне просто нужно закинуть файлы на сервер и автоматически все перезапустить.
Чем ты пользуешься анон?
>>759554
52 Кб, 627x268
#224 #759553
git+fabric
>>759554>>759579
#225 #759554
#226 #759579
>>759553
А что делаете с тем что фабрик не поддерживает 3-й питон?
>>759581
#227 #759581
>>759579
Ничего.
#228 #759652
Где посмотреть примеры кода хорошего Django?
Может snippet'ы какие где есть, может на гитхабе валяются всякие джангоподелки годные не слишком невероятно сложного уровня для меня-только вкатившегося?
>>762823
#229 #759713
>>759334
Студент без опыта работы интересует?
>>759715
#230 #759715
>>759713
Но с джангой и пайтоном работал, если что.
13 Кб, 480x360
#231 #759743
Двощ, все знают, что без ангельского в кодинге делать нечего. Посоветуй чего-нибудь, чтобы подтянуть его хотя бы до уровня чтения документаций. Книги какие может по техническому инглишу или курсы, прыложения, игры, етц., расскажи, как сам учил. Буду очень благодарен.

Мой уровень: понимаю доки через слово, на пару с гуглотранслейтом с горем пополам справляемся.
Да, я знаю, что не для этого, но я, как и ты, учу питон, так что мы с тобой почти братья, не ругайся, прошу.
>>759745
#232 #759745
>>759743
1. Читаешь
2. Увидел неизвестное слово/оборот
3. Загуглил
4. Понял
5. goto 1
#233 #759746

>>> L = [1, 2, 3, 4]


>>> result = L[0]


>>> for x in L[1:]:


result = result * x

что значит L[1:]? С доков на офф сайте питона понял что L[:] проводит операции в копии списка, но для чего здесь единица?
>>759813
#234 #759810
>>759334

> От 45к.


Это за сколько часов в день/неделю?
6 Кб, 227x227
#235 #759813
>>759909
#236 #759821
Как правильно написать регулярку?
В общем, есть строка "Привет, что делаешь?"
Переводим в нижний регистр и убираем спец. символы.
"привет что делаешь"
Далее, разбиваем на маски.
"привет что делаешь"
Вот такая регулярка работает, но при другом порядке слов в строке или отсутствие, например 1 слова - не работает.
Можно как-то сделать, чтобы работало при любом порядке слов?
>>759822>>759843
#237 #759822
>>759821

> разбиваем на маски


"приветзвездочка чтозвездочка делаешьзвездочка"
#238 #759824
>>759932
#239 #759843
>>759821

>Можно как-то сделать, чтобы работало при любом порядке слов?


Чтобы что работало? Какой результат от регулярки ты ждёшь?
>>759845
#240 #759845
>>759843
Чтобы строку "привет что делаешь", находило даже если слова не по порядку.
Например, чтобы "что делаешь привет" была для регулярки равна "привет что делаешь".
Это вообще возможно?
>>759847
#241 #759847
>>759845
http://stackoverflow.com/questions/7719559/regular-expression-with-multiple-words-in-any-order-without-repeat
В двух словах: на одних регулярках это боль. Делай иначе.
#242 #759864
Издательство «Packt», в связи с проходящей в Портленде (шт. Оригон, США) конференцией PyCon 2016, c 28 мая по 5 июня предлагает бесплатно получить книгу «Python Unlocked» в электронном виде.

Эта книга расскажет вам про то, как:

Создавать грамотный, неглючный, высокопроизводительный код с минимальными усилиями;
Использовать по максимуму доступные возможности Python на сегодняшний день;
Применять декораторы, шаблоны, и различные техники оптимизации для еффективного использования Python.

https://www.packtpub.com/promo/pycon2016/
>>759866
#243 #759866
>>759864
Спасибо, спёр и себе
#244 #759868
Чуть почитал про WebAssembly
Мне кажется главная фобия бухгалтеров САЙТ С ВИРАСАМ становится реальной, вот и вся революция практически
>>759877
#245 #759877
>>759868
Альтернатива js — пока что лучшее что случилось с миром веб-параши.
>>759888>>759891
#246 #759880
Есть кто пишет на PyQt? Как блять работать с моделями-представлениями, нихуя не понятно, вся литература для с++ написана
#247 #759888
>>759877
Удваиваю. Фронтэндом можно будет заняться без зашквара об всякие джава/кофе/тайпскрипты.
>>759891
#248 #759891
>>759888
>>759877
Окей, двач, как мне писать фронтэнд на питоне без лишней ебалы? Туториалы, книги, смешные истории?
>>759894
#249 #759894
>>759891
Сначала_ты_идешь...txt
#250 #759909
>>759813
спс, анон
#251 #759925
Сап, питонач.
Аноны, подскажите, пожалуйста, как можно реализовать получение размера файла в сети без его непосредственной скачки на пеку? Для файлов на ЖД есть os.path.getsize(filename), а вот что делать с Интернет - хз.
Хочу сделать качалку определенных файлов из сети, и чтобы в потоке показывалось сколько процентов скачалось.
>>759932
#252 #759927
Поясните пожалуйста нубасу про цикл.
Есть код такого вида: https://ideone.com/Ht5s39
Надо, чтобы после выбора пункта в первом вводе, если во втором вводе вводится "0", то программа не прерывалась совсем, а возвращалась обратно на первый ввод.
Не очень понимаю, как правильно сделать. Через if не подходит.
>>759930
#253 #759930
>>759927
Первый ввод - это izd, а второй - внутри цикла?
Тогда оберни всю программу в while True
>>759931
#254 #759931
>>759930
Да, первый izd, второй i
Просто у меня там внутри ещё куча всякого говна будет, и что-то мне кажется, что обернуть ещё в один цикл, это очень уж костыльно, какой-нибудь goto (которого нет) и то выглядит лучше.
Может в питоне есть какие-то якори, к которым можно организовать переход при определённом условии?
sage #255 #759932
>>760030
#256 #759933
>>755069
чистый код?
>>760753
55 Кб, 855x502
#257 #759943
Как делать универсальное копирование? Я же со словаря срез не возьму.
>>759958>>759967
12 Кб, 386x252
#258 #759958
>>759961
#259 #759961
>>759958
А с другими типа что делать? Универсальный способ какой?
>>759963>>759968
#260 #759963
>>759961
Какими другими? Если ты имеешь в виду мутабельные объекты в качестве значений словаря, то они и в срезе списка теми же остаются.
>>759966
#261 #759966
>>759963
Мои собственные класс, инты, кортежи. Все объекты одним способам копировать.
#262 #759967
>>759943
.copy()
>>759973
#264 #759973
>>759967
А если этот метод не определён в моём классе?
>>759976>>759979
#265 #759976
>>759973
Что мешает его определить?
>>759978
#266 #759978
>>759976
Чтобы копировать объекты моего класса мне нужно создавать метод копирования для этого класса? Что за бред? Во всех языках просто пишешь равно и он копируется.
#268 #759981
>>759978

>Во всех языках


И тут ты такой с пруфами одинаковой методики копирования для классов и мутабельных объектов.
#269 #759982
>>759978

>Во всех языках просто пишешь равно и он копируется.


Это в каких-таких языках сложные объекты сами по себе копируются одним только равно?
#270 #759984
>>759979

> copy.copy(a)


А так это не метод класса. А в питоне есть указатели?
>>759988
#271 #759988
>>759984
В питоне только указатели.
#272 #759993
>>759978
Лал. Это как раз таки если равно определено как assign, а если нет?
#273 #760010
Питоны, подскажите где косяк? Пишет что аргументы не передаются в урл, хотя вроде указал pk. Алсо, принт не выполняется, т.е. в функцию не находит, получается?
http://pastebin.com/L1xFEi6b
>>760012>>760014
#274 #760012
>>760010
Форекс?
>>760016
sage #275 #760014
>>760010
Ты по какому урлу обращаешься к странице?
>>760022
#276 #760016
>>760012
Не, но с торгами связано
#277 #760022
>>760014
Если я правильно понял твой вопрос то к странице где список торгов обращаюсь по урл
url(r"^biddings/$", views.biddings_list, name="biddings_list"),
Там есть кнопка для сабмита нового объекта, и вот она упорно ругается на то что прикрученный к ней урл не получает аргумент
>>760026>>760029
#278 #760026
>>760022
Есть подозрение, что последний слеш в url не нужен.
#279 #760029
>>760022
Нет, дай адрес страницы, как ты к ней обращаешься. Например, там https://2ch.hk/pr/add_bid/lolka/ (М)
Если формируешь скриптами, то как формируешь.
Просто ошибка говорит о том, что ты не указал id, типа
https://2ch.hk/pr/add_bid/ (М)
>>760045
#280 #760030
>>759932
Спасибо
#281 #760034
Анончики, поясните. Программисты постоянно используют слова вроде: инкапсуляция, мутабельный и проч. Почему нельзя говорить: вложение и изменяемый? Я понимаю зачем, например, введен термин "итерация", но это-то все зачем?
#282 #760035
>>760034
Хотят выглядеть умными.
#283 #760036
>>760034
Потому что обычно обучаются на английских источниках, поэтому и слова получаются такими.
#284 #760037
>>760034
1. Потому что мы подлизываемся под америку
2. Чтобы не наводнять язык ненужными терминами и не держать в голове десять копий на каждом из языков. Всё равно тебе русские термины нахрен не сдались. Если тебе какую-то проблему решить — всё равно на английском же. А про себя как хочешь их называй, всем, опять же, плевать.
#285 #760038
>>760034
Анон. В каждой предметной области есть своя терминология. И нередко она основана на языке той страны, где эта предметная область развилась раньше и сильнее. Например в юриспруденции и медицине имеет значение латынь, в кулинарии французский, в музыке итальянский. В программировании это английский.
В идеале разговор по предметной области вообще должен быть на её языке исключительно.

А теперь возвращайся в /б/
>>760040>>760065
#286 #760040
>>760038
Во-первых, спасибо. Во-вторых, вытряхни песок из вагины.
>>760136
#287 #760045
>>760029
>>760029
http://127.0.0.1:8000/butik/biddings/ вот урла для шаблона, в который рендерится аукцион
http://127.0.0.1:8000/butik/add_bid/1/ вот урл, по которому какбэ должен создаваться новый объект ставки, но нихуя, ибо проблема выше.
>>760055
#288 #760046
>>760034
Потому что если для инкапсуляции ещё можно русский аналог найти, то для целой тучи англицизмов - уже нет, тот же коммит как ты переведёшь?
Вот что бы не плодить сущности
>>760065
7 Кб, 339x67
#289 #760055
>>760045
Проблемы на твоей стороне, либо ты чего-то не договариваешь.
Изменил код, но это не должно влиять на ошибку:
http://pastebin.com/uMPrptPc
#290 #760065
>>760046
Так я же привел пример с итерацией. Понятие, которое не имеет своего аналога в языке и описывается несколькими словами, заменить одним иностранным - это нормально, тем более если тебе приходится часто его использовать. Но когда вместо "изменяемый" пишут "мутабельный", то в голове невольно возникает вопрос "а смысл?"

И на упреждение данного нервного персонажа и ему подобных
>>760038
Я понимаю и принимаю эту позицию. Возможно в дальнейшем сам буду активно использовать англицизмы. Но сейчас мне подобное кажется велосипедом, собственно почему и спросил.
>>760077>>760146
60 Кб, 500x750
#291 #760071
Ребята, привет.
Может кто-нибудь помочь распарсить XML вывод nmap c помощью python 3 и xml.etree.ElementTree? Пример вывода тут - https://ideone.com/U0c7aM, хочу понять, как вычленить из xml адрес, порт, если этот самый порт открыт. От себя могу предложить искреннюю благодарность и немного поболтать на технические темы в области ИБ.
#292 #760077
>>760065
Лишь бы тебя понять можно было. У меня препод был в универе который ещё энигму разбирал что бы спиздить алготримы, так вот его терминологии состоящей сплошь из подобранных им же русских аналогов западных терминов я по сей день понять не могу.
В любом случае это не тот вопрос, на котором следует акцентировать внимание.
>>760284
#293 #760136
>>760040
Если бы она у меня была...
#294 #760146
>>760065
"Изменяемый" - непонятно, от какого глагола - совершенного вида или несовершенного. "Изменяемый в данный момент времени" - changing/mutating. "Изменяемый вообще, подлежащий/подверженный изменениям" - changeable/mutable.
>>760284
#295 #760152
>>760034
Да ты переводи, не стесняйся, и придумывай новые слова.
Это основа познания на основе долговременной памяти. Суть: чтобы что-то запонить или понять нужно назвать это своим именем - это даст иллюзию понимания и позволит расужндать о предмете как о чем-то знаком. Далее, при контаксте с "нормальными" людьми тебе придется перводить свою терминологию на общепринятый язык - это считай повторение(тренировка памяти) и объяснение(проверка как твои понятия соотносятся с реальностью).

Оче выгодная стратегия обучения.
>>760284
#296 #760159
>>760071
https://ideone.com/JPrWyw
Питон 2.7

Результат - список node_nmap из объектов node, потом функция node.values() выдает из них по списку из, в данном случает, типа порта и номера:

['tcp', '80']
['tcp', '81']
['tcp', '1080']
['tcp', '1081']
['tcp', '3128']
['tcp', '8080']
['tcp', '8081']

print "len=", len(nodes_nmap), print nodes_nmap - отладочные строки, тк взял из своего старого пробного примера, забыл стереть, когда постил.

Надо также поправить XML, у него незакрыт <nmaprun>, и я также удалил строки со ссылками на схему, т.к. она ведет на локальный файл, но, возможно, будет работать и с такой ссылкой на схему.

Вообще, для составления XPath и наглядного просмотра XML есть удобные программы вроде XMLExplorer
#297 #760160
>>760071
PS

>если этот порт открыт


разве там не только те порты, что открыты, указываются ?
>>760166
#298 #760162
>>760071
PPS факт, наоборот, все порты filtered.
#299 #760166
>>760160

>разве там не только те порты, что открыты, указываются ?


Без ключа --open нет.
Спасибо, попробую допилить по твоему решению.
#300 #760218
>>760071
https://ideone.com/lgM32G
Вот Python 3, но нужно вручную ставить lxml, скачать и через

>pip3.5.exe install c:\....\lxml-3.6.0-cp35-cp35m-win32.whl

#301 #760237
https://projecteuler.net/problem=122 пол дня ломаю голову над это задачей, как часто может подобное пригодиться в программировании, насколько сложной считаешь её ты?
>>760238
#302 #760238
>>760237
Может где в алгоритмах, хз, тут тред есть хороший рядом по CS там спроси.
В питоне тебе пригодится:
Знать досконально сам питон всю эту хуйню про классы, различия между списком и кортежем
И если хорошо все понял - сильно поможет знание стандартной библиотеки потому что она сама по себе содержит дофига вещей, которые заменяют очевидные и не самые очевидные велосипеды, которые тебе пришлось бы городить - ну типа defaultdict того же
Остальное это все примерно

> фром нужная библиотека импорт фича


> фор и ин список


> ....Фича делай и



Ну это я утрирую конечно.
>>760239
#303 #760239
>>760238
спс, кстати что думаешь насчет задачи, с каждым часом её решения моя самооценка падает всениже и ниже
>>760242>>760243
#304 #760242
>>760239
dict в помощь.
Делаешь итерации
@
заполняешь.
#305 #760243
>>760239
Я дропнул не-прикладные задачи еще на уровне не то что проекта Эйлера, а питонтутора просто. Мне такое не интересно, теоретической базы кроме sicp я толком не имею а наверстать ее пока не могу/не хочу.
SAGE #306 #760261
Онаны, что может значить вот эта запись? :
REG_EX = '\s(?P<f>[а-яА-Я])\s(?P<i>[а-яА-Я])\s(?P<o>[а-яА-Я])\s(?P<d>\d)[./-](?P<m>\d)[./-](?P<y>\d)\s(?P<polis_type>[а-яА-Я])\s*
>>760265
#307 #760265
>>760261
регулярное выражение
потыкай тут в regex library https://regex101.com/ сам поймёшь что оно делает
>>760266
SAGE #308 #760266
>>760265
Спасибки
#309 #760270
Как мне запустить через код скомпилированный модуль, который генерирует текстовый файл с рандомными буковками? Модуль лежит в папке
#310 #760284
>>760146
О, благодарю. Тут у меня нет никаких контраргументов.

>>760077
Я согласен, что сильно не стоит акцентироваться на этом, но где лучше задать такой вопрос как не здесь?

>>760152
Да я и не стесняюсь. мне было важно понимание, что эта терминология используется не просто так.

Всем спасибо большое за ответы.
#311 #760346
почему в цикле for при объявление любого n из типа dict, он вызывает ключ, а не его значение ? Почему print(n) в этом же цикле выведет название ключей ? Из-за самого синтаксиса словаря {ключ, значение} ? То есть при выполнение цикла: n типа dict он видит только как "ключ" или "значение" ?
>>760361>>760385
#312 #760358
какие библиотеки и разделы питона нужны для написания простенького чата
>>760460>>760461
#313 #760361
>>760346
for i in d равно for i in d.keys() так проще
>>760378
#314 #760378
>>760361
По умолчанию такое присваивание уже стоит ?
>>760391
#315 #760385
>>760346

>почему в цикле for при объявление любого n из типа dict, он вызывает ключ, а не его значение ?


Возможно, потому что ключи уникальные, и по ключам можно узнать значение, а вот наоборот - затруднительно.
>>760392
#316 #760391
>>760378
Ага. Значения не уникальные, а по кортежам ходить не так удобно.
Сравни for i in d: print(i,d) и for i in d: print(i[0],i[1])
>>760392
#317 #760392
>>760385
>>760391
Cпасибо.
#318 #760460
>>760358
встроенного socket в принципе достаточно
#319 #760461
>>760358
asyncio для сетевой части
>>760462
#320 #760462
>>760461
ТОЛЬКО ТОРНАДО ТОЛЬКО АСИНКИО ФРОНТ НА АНГУЛЯР БЕК НА ДЖАНГО ПРОСТЕНЬКИЙ ЧАТ ЖЕ
>>760468>>760491
#321 #760468
>>760462
Чё бля?!
#322 #760491
>>760462
Хотел кстати сделать чатик на основе вебсокетов. Так вот глянул на всякие вебсокет библиоткеи под asyncio - всё таки tornado намного взрослей выглядит.
#323 #760695
Анон, как сделать голосовалку на django? Допустим я сделаю в модели поле TextField и буду засовывать туда ip-шки проголосовавшых(их будет немного) а потом проверять нет ли ip в списке, но мне кажется что это как-то по уебански, как сделать правильно?
>>764522>>764527
#324 #760697
Как понять, что я правильно установил библиотеку? Вроде все установилось библиотека matplotlib, но когда импортирую из нее pylab, тот подчеркивается красным и выдает ошибку
from matplotlib import pylab
ImportError: No module named 'matplotlib
>>760699
#325 #760699
>>760697
Все, разобрался.
#326 #760753
>>759933
типа того, чтоб антоха и петян не охуевали сильно, и доёбывались по существу тут.
#327 #760907
>>755069
Вот тебе дистилят из PEP8: rukeba.com/by-the-way/pep8-korotko-i-po-russki/
#328 #760992
Боже как мне нравится придумывать приложения, их бизнес-логику, какие-то особенности интерфейса, впаривать это всё людям и как мне слабо на фоне этого нравится собственно кодить. В принципе я кодю только потому что без этого точно никому не буду нужен. А по-уму мне бы в какие ну если не продажники, то в пмы, тз-писцы или кто там с клиентами пиздит больше всего а потом кодеров это делать заставляет.
Эх.
#329 #761030
2016
Аноны кодят на питоне...
>>761048
#330 #761048
>>761030
а че такого
покормил
#331 #761164
Ух Redis вот это мощь блин, суперкруто.
#332 #761179

>>75362



Привет питончики.
Прошу помощи в нахождении обучающих материалов по python, которые не устарели

Марк Лутц все еще в 4 издании на русском - в программаче сказали что это старье.

На ютабе уроков под версию 3.5 нету, зато какой-то мужик рассказывает про 3.4 вот ссылка

https://www.youtube.com/channel/UC9rWgAzfjfK-iq-cOp4ZGGw подойдет ли он ?

В общем, я новичек и нихуя не знаю, поэтому вопрос что читать/смотреть чтобы было не устаревшее и чтобы не пролететь как фанера над Парижем ?
#333 #761181
>>761179
учи-ставь-пиши на 2.7. Очень много всяких модулей совместимы только с 2.7. 3.5 не сильно отличается (там добавлены некторе методы-фуекции которые пишутся на 2.7, но в 3.5 идут по дефолту).
#334 #761184
>>761179
Не слушай >>761181-ретрограда. Ставь 3.5, учи по любой книге, где используется 3.
#335 #761185
>>761184

3.0 сильно отличается от 3.5 ?
>>761188
#336 #761187
>>761179
Насчет книг, недавно попалась: ThinkPython_v.1.1.24+Kart[Python_3.2]_RU_v.1.06.pdf
По идеи, она для тех, кто только начинает (там много воды про структуру данных, что такое массивы-словари и вот это фигня), но она не такая академичная как у Лутца.

Если это твой не первй язык, то подойдет Укус питона(тоже есть на русском).

>>761184
И сосни хуйцов на продакшене, когда время-деньги. А ты выбрал 3.5, а библиотека которая тебе нужна поддерживает только 2.7
>>761194
#337 #761188
>>761185
Постарайся найти книгу с 3.3+ хотя бы. Там появилась yield from. В остальном не сильно.
#338 #761190
Двач, как мне пройти авторизацию по https с подменой сертификата
>>761192
#339 #761192
>>761190
Написал про тебя в Центр "К", пусть следят.
>>761193
#340 #761193
>>761192
мне банально хотелось получать сколько у меня на счету лежит провайдера :с

Хотел реквесты выучить, а по итогу я в говне
>>761198
#341 #761194
>>761187

> библиотека которая тебе нужна поддерживает только 2.7


Это какая?
>>761196
#342 #761196
>>761194
Не помню уже, но столкнулся с этой проблемой толи с хайстеком, то ли с эластиксёарч.
>>761208
#343 #761198
>>761193
httplib через SSL умеет
#344 #761208
>>761196
https://pypi.python.org/pypi/elasticsearch/2.3.0
https://pypi.python.org/pypi/haystack
$ 2to3 -wn .../haystack
$ python
Python 3.5.1 (default, May 5 2016, 14:43:33)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.

>>> import haystack


>>>



Ох уж эти кукаретики.
>>761227
108 Кб, 600x900
#345 #761212
>>761181

> 3.5 не сильно отличается (там добавлены некторе методы-фуекции которые пишутся на 2.7, но в 3.5 идут по дефолту).

>>761218>>761235
205 Кб, 1000x1414
#346 #761215
>>761235
#347 #761218
>>761212
Что не понравилось? Сильно отличается? В чём? Синтаксисе - нет. Добавили новые плюхи. Поправь.
#348 #761225
>>761218
Так, ок. А как перевести джанго-проект, на 3.4-.5? Нужно удалить 2.7 и поставить 3.5, а потом на него Джангу и все модули?
#349 #761226
>>761218
Не понравилось про "некторе методы-фуекции".

Статическая типизация, asyncio, единообразный уникод, raise ... from, оператор @ в конце концов - это нихуя не методы-фуекции, это существенные изменения в языке и платформе.

Но и методы-фуекции нельзя игнорировать, так как их вагон и маленькая тележка - количество переходит в качество.
>>761234>>761238
#350 #761227
>>761208
Думаю он имел в виду django-haystack. Я кстати тоже страдаю от того что все дрочат на 2йку. Уже третья работа и все под второй бидон. Заебали уже. Их мордой тыкаешь в проблемы с кодировкой, возникающие в самых неожиданных местах,а они сука в глаза ебутся. Им объясняешь что "живые" пакеты могут отказаться от поддержки 2йки раньше, чем она перестанет поддерживаться официально, а они в ответ только кукарекают о том что до этого еще дожить надо.
#351 #761231
>>761227

>Гвидонист сталкивается с суровой реальностью.

>>761232
#352 #761232
>>761231
Сказать-то что хотел, болезный?
65 Кб, 535x750
#353 #761234
>>761226

>Статическая типизация


>Питно

>>761245
#354 #761235
>>761184
>>761212
>>761215
А вот и хипстеры подтянулись.
>>761241>>761242
#355 #761236
>>761227
Думаю там либо всё и так работает, либо 2to3 справится, либо руками за пару часов можно.
#356 #761238
>>761226
>>761218
Ещё в >=3.2 gil существенно подлатали, теперь переключение контекста происходит не по количеству выполненых инструкций а по запросу от другого потока, следственно никаких блокировок на ровном месте в однопоточном коде и не только.
>>761247
#357 #761241
>>761235

> Развитие не нужно! Фичи не нужны! Больше говнокода богу говнокода!

#358 #761242
>>761235
Пердуны со своей 2.7 весело похрюкивая продакшеном катятся в депрекейтед и просят ещё.
>>761296
#359 #761245
>>761234
Ты щас аутируешь про то, что я сказал "статическая" вместо "gradual", или что надо отдельно ставить MyPy, или что?
#360 #761247
>>761238
Да кстати, там много разных оптимизаций, на моих проектах ускорение заметно невооружённым глазом, хотя в целом погоды оно конечно не делает.
#361 #761252
как проверить есть ли элемент в одном из списков? что б
if 5 in [[5]]
выдавало true
>>761254>>761259
#362 #761254
>>761252
p.s в одном из списков внутри списка
#363 #761259
>>761252

> any(5 in i for i in [[5]])

>>761265
#364 #761265
>>761259
>>761259
а что если внутри списка может быть очень много списков внутри списков?
>>761272>>761282
34 Кб, 693x663
#365 #761270
Уже достаточно давно для себя изучаю питон и тут я внезапно охуел. Оказывается, к функциям можно присоединять атрибуты типа:
def func():
pass
func.a = 5

Но я так и не понял нахуя это надо?
#366 #761272
>>761265
Рекурсивно делай yield элементов и сравнивай.
#367 #761275
>>761270
Ну во-первых это красиво.
75 Кб, 417x365
#368 #761282
>>761265
Если ты о большей вложенности то нужно написать метод для их рекурсивного обхода.

>>761270
Всё является объектом, dir(func) сделай.

> Но я так и не понял нахуя это надо?


Пикрил пример использования.
#369 #761284
>>761282

>Пикрил пример использования.


Логично, спасибо
#370 #761285
>>761282
>>761270
Олсо, functools.wraps тоже работает с полями функции - копирует поля __doc__ и __name__.
>>761290
#371 #761286
>>761282

> Всё является объектом


Но не всем объектам можно присваивать атрибуты, тем более произвольные.
>>761290
#372 #761290
>>761285

> полями


> поля


Проебался.

>>761286
Ты о __slots__ или чем-то чего я не знаю?
>>761291
#373 #761291
>>761290

> Ты о __slots__ или чем-то чего я не знаю?


Ну есть тупо иммутабельные объекты вроде интов. Но да, больше всего это заметно со __slots__.
#374 #761296
>>761242
Двойка депрекейтед только во влажных фантазиях Гвидо. По факту 2.7 - это стандарт, а тройка - это игрушка для хипстеров с кучей ненужных перделок, которую в реальных проектах используют 1.5 стартапщика.
>>761300>>761303
#375 #761300
>>761296
Что еще расскажешь
48 Кб, 288x288
#376 #761303
>>761296

> версия языка почти 10ти летней давности


> не депрекейтед



> актуальная версия языка


> игрушка для хипстеров

>>761304
#377 #761304
>>761303
I know that feel.
>>761227 кун
#378 #761328
Пайтон-господа, кто-набудь юзал xhtml2pdf? Когда пытаюсь сконвертить хтмлку, онг выдает 'NoneType' has not attribute 'encode', хотя все делалось, вроде, верно.
#379 #761460
Аноны, а почему в шапке нет степика? Иди курсы там-говно?
#380 #761641
Вот тут нужно, чтобы label2 рандомился заново, по нажатии на кнопку, а он не рандомится. В чём может быть проблема?
#381 #761642
>>761648
#382 #761644
>>761641
файл не хочет клеиться
https://ideone.com/GQuScb
>>761648
#383 #761648
>>761641
>>761642
>>761644
Потому что command=rand_statya() вызывается только один раз. Предполагаю, тебе нужно заменить его на command=rand_statya, по крайней мере такой выход использует джанга (если видит, что параметр callable, то вместо постоянного результата вызывает функцию).
>>761669
#384 #761669
>>761648
после 4х лет изучения и работы на c-like языках мне это кажется абсолютно непостижимым. Просто убрал скобки и всё заработало. Можешь поподобнее объяснить, в чём разница между двумя этими записями?
>>761702>>761797
10 Кб, 366x109
#385 #761687
Где ошибка?
>>761688
#386 #761688
>>761687
Отступа нет.
>>761692
#387 #761692
>>761688
Странно. Разве он не должен делать его автоматически? И те 3 точки это разве не отступ? Нажимаю таб и он не реагирует. А в одну строку программа работает.
>>761717>>762804
#388 #761702
>>761669
При записи:

> command=rand_statya()


в command передается результат выполнения фунции, поскольку она ничего не возвращает передается None, т.е. запись эквивалентна

> rand_statya()


> tkinter.Button(mainFrame, text='Сгенерировать', width=24, command=None)


а когда передаешь в command функцию, как предложил анон выше, она будет вызываться каждый раз при клике на Button, в обработчике происходит что-то типа:

> def onclick(command=func):


> __if callable(func):


> ____func()

>>761705
#389 #761705
>>761702
спасибо
#390 #761717
>>761692
бамп
#391 #761765
С кодеакадемии притащил, конвентировал значение int в плавующую точку, потом пытался выводной ответ цикла for соединить в одну строчку и сложить. В итоге получилось только для каждого цикла отдельную сумму каждых ключей сделать. Устал и открыл форум, там написано вот это:

dict0 = {положим что ключи одинаковы c dict1}
dict1 = {положим что ключи одинаковы с dict0}

total = 0
for n in dict0:
total += dict0[n]*dict1[n]
print(total)Дает некое max значение одной строчкой.
print(total) выдает для каждого ключа из цикла

что происходит в цикле ?
>>761767>>761775
#392 #761767
>>761765
второе принт с табуляцией.
#393 #761775
>>761765
он создает последовательно с N0 в 0, N1 = первому циклу, N2 = N1+0, N3 = N2+0, N4 = 0 ?
>>761777
#394 #761777
>>761775
блять N4 = N3 + 0.
Извиняюсь что насрал вам тут своей тупостью, ну сука как он это делает ?
#395 #761785

> Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_user/pandas/setup.py';exec(compile(getattr(tokenize, 'open', open) __file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-fdYvWU-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_user/pandas


Что ему не нравится? 5 минут варнингами в консоль срал и вдруг ошибка.
#396 #761797
>>761669

>после 4х лет изучения и работы на c-like языках мне это кажется абсолютно непостижимым


Ну, тогда ты чмо галимое. Указатели на функции есть даже в си.
>>761989
#397 #761817
Тьфу, блин. Посоны, пытаюсь собрать pyinstaller'ом свою прогу (don't ask why). В общем есть модуль odf для работы с openoffice'ом. И у него внутри есть такая строчка

>sys.path.append(os.path.dirname(__file__))



и потом

>from namespaces import *



В общем, в собранном пакете ошибка

>ImportError: No module named 'namespaces'



Как-то надо указать пайинсталлеру что эту папку надо добавить в импорты. Что-то не получается, может кто-то уже парился с этим?
>>761859
#398 #761823
Или другой вопрос - как левую библиотеку собрать во что-то одно целое, чтобы просто подключить к приложению?
#399 #761825
понимаю, что вопрос не совсем по тематике питона, но аноны добрые, скорее всего помогут ;з

∑ m(k) при 1 =< k =<5 это типа как m(1)+m(2)+...+m(5)?

заранье спс
>>761831
#400 #761831
>>761834
#401 #761834
>>761831
спс
#402 #761859
>>761817
Закинь namespaces в директорию со своей прогой и добавь её в .spec
>>761870
#403 #761870
>>761859
Решение не очень, сам понимаешь.
Но я нашел другое, чуть получше, но не сильно. Подправил имопрты в этой библиотеке. Файлов оказалось мало и я это сделал быстро.
Но! Теперь другая проблема.
Все кириллические символы (а питон третий) просто пропали!
Если раньше была строка: "name": "_Клиент", то теперь "name": "_". Кабзсдос
>>761872
#404 #761872
>>761870
Собирал много бинарников pyinstaller-ом, никаких проблем такого плана не было.
>>761874>>761909
#405 #761874
>>761872
Жаль. Рад за тебя.
#406 #761909
>>761872
Наверно это проблема в том что pyinstaller как-то неправильно собирает модуль unidecode. Пойду разбираться дальше.
#407 #761989
>>761797
Написав c-like, я имел в виду java
>>762077
#408 #761999
Что это такое?
use LWP::UserAgent;

https://ideone.com/2tQsSd
Почему не работает?
>>762005>>762323
#409 #762005
>>761999
Накати libwww-perl. Не может же либу найти, ну.
>>762018
#410 #762016
Друзья, помогите настроить Джини под питон, пожалуйста. Обычно вылезает эта ошибка Процесс дал сбой (CreateProcess() failed: Неверно задано имя папки.)
#411 #762018
>>762005
Да установлена же она.

libwww-perl: /usr/share/doc/libwww-perl/copyright
libwww-perl: /usr/share/doc/libwww-perl/changelog.Debian.gz
libwww-perl: /usr/share/doc/libwww-perl

запускаю из консоли:
use LWP::UserAgent;
^
IndentationError: unexpected indent
>>762029
#412 #762022
теперь у меня инвалид синтакс.

Как ваши файлы запускать? пускаю через терминал python index.py

в самом файле просто код
use LWP::UserAgent;
use HTTP::Request::Common;
use HTTP::Cookies;

my $login = 'LOGIN';
my $password = 'PASSWORD';

my $cookie_jar = HTTP::Cookies->new();
my $ua = LWP::UserAgent->new( ssl_opts => { verify_hostname => 0 } );
$ua->timeout(10);
$ua->agent( $userAgent );
$ua->cookie_jar( $cookie_jar );
my $res = $ua->get( 'https://i...content-available-to-author-only...m.com/accounts/login/' );
my $result = $res->content;
if( $result =~ /<input type="hidden" name="csrfmiddlewaretoken" value="(.+?)"/ ) {
my $token = $1;
my $postString = 'csrfmiddlewaretoken='.$token.'&username='.$login.'&password='.$password;
my $req = HTTP::Request->new( POST => 'https://i...content-available-to-author-only...m.com/accounts/login/' );
$req->content_type( 'application/x-www-form-urlencoded' );
$req->content( $postString );
$req->header( 'Accept-Language' => 'en-US,en;q=0.5' );
$req->header( 'Referer' => 'https://i...content-available-to-author-only...m.com/accounts/login/' );
my $res = $ua->request( $req );
my $result = $res->content;
if( $res->code == '302' ) {
print 'Login success';
}else {
print 'Login failed';
}
}
#412 #762022
теперь у меня инвалид синтакс.

Как ваши файлы запускать? пускаю через терминал python index.py

в самом файле просто код
use LWP::UserAgent;
use HTTP::Request::Common;
use HTTP::Cookies;

my $login = 'LOGIN';
my $password = 'PASSWORD';

my $cookie_jar = HTTP::Cookies->new();
my $ua = LWP::UserAgent->new( ssl_opts => { verify_hostname => 0 } );
$ua->timeout(10);
$ua->agent( $userAgent );
$ua->cookie_jar( $cookie_jar );
my $res = $ua->get( 'https://i...content-available-to-author-only...m.com/accounts/login/' );
my $result = $res->content;
if( $result =~ /<input type="hidden" name="csrfmiddlewaretoken" value="(.+?)"/ ) {
my $token = $1;
my $postString = 'csrfmiddlewaretoken='.$token.'&username='.$login.'&password='.$password;
my $req = HTTP::Request->new( POST => 'https://i...content-available-to-author-only...m.com/accounts/login/' );
$req->content_type( 'application/x-www-form-urlencoded' );
$req->content( $postString );
$req->header( 'Accept-Language' => 'en-US,en;q=0.5' );
$req->header( 'Referer' => 'https://i...content-available-to-author-only...m.com/accounts/login/' );
my $res = $ua->request( $req );
my $result = $res->content;
if( $res->code == '302' ) {
print 'Login success';
}else {
print 'Login failed';
}
}
#413 #762029
>>762018

>libwww-perl: /usr/share/doc/libwww-perl/copyright


>libwww-perl: /usr/share/doc/libwww-perl/changelog.Debian.gz


>libwww-perl: /usr/share/doc/libwww-perl


Это только документация, а не сама либа. Должны быть файлы с расширением .pm. Ты где-то накосячил, попробуй переустановить.

>запускаю из консоли:


>use LWP::UserAgent;


>^


>IndentationError: unexpected indent


Попробуй в начало файла строку добавить:
#!/usr/bin/env perl
>>762038>>762042
#414 #762038
>>762029
Да, еще
$ chmod +x file
сделай. Вроде очевидно, но мало ли.
#415 #762042
>>762029
libwww-perl is already the newest version (6.15-1).

Все у меня установлено. Тьфу на ваш питон.
>>762044>>762330
#416 #762044
>>762042
Вот и правильно. Я тоже перл больше люблю, только зачем ты с ним сюда полез? В прикрепленном бы спросил.
#417 #762077
>>761989
А чё, в жаве нет указателей на функции и их нельзя передать как аргумент, например?
>>762101
#418 #762101
>>762077
Начнем с того, что в джаве нет функций.
>>762239
#419 #762117
Как запустить джанго в продакшн-режиме?
python3 manage.py runserver
Не работает в фоне, плюс celery надо запускать отдельно.
>>762140>>762162
#420 #762140
>>762117
Гугли по запросу deploy
#421 #762162
>>762117
Можно эту хуйню в supervisor забить, но для продакшона тебе понадобиться gunicorn или uwsgi.
42 Кб, 400x405
#422 #762239
#423 #762281
Интересно бы было взглянуть в заплывшие глазки того особо развитого человека, который придумал отключать статику на джанге в прод-режиме.
>>762295>>762296
#424 #762288
Чуваки-джангисты, а можно попросить кого-нибудь кто бы мне лично поотвечал на вопросы о джанго по е-мейлу или ещё как.
Кодить буду сам продукты под себя, уже немного умею в джанго, но не до конца врубаюсь по всяким моментам.
>>762296>>762297
#425 #762295
>>762281
Какую статику, чо несешь?
>>762327
#426 #762296
>>762288
Есть же чятик - https://invite-me-to-2chpr.herokuapp.com/

>>762281
Зачем её вообще отключать, не в прод-режиме?
>>762307>>762389
#427 #762297
>>762288
Пиши anony0B`m.whiteANUSyaEVwndexPUNCTUMM`vru. Это и почта и скайп.
>>762389
#428 #762307
>>762296
Затем, что статику должен отдавать фронтенд сервер.
>>762326
#429 #762323
Какой сложный у вас язык. Загуглил слово "my" из >>761999 https://ideone.com/2tQsSd
g: python my - В ответ ничего
g: python my keyword - В ответ ничего
g: python my - В ответ ничего
g: python my documentation - В ответ ничего
g: python my variable - Вторая ссылка ведет на форум.
Никакой документации. Охуеть. Итого 5 минут поиска чепухи.
>>762330>>762338
#430 #762326
>>762307
ПРИШЛО ВРЕМЯ ПОДКЛЮЧАТЬ ЕЩЁ ОДИН СЕРВЕР! СЕРВЕР САМ СЕБЯ НЕ ПОДКЛЮЧИТ! ЗАЧЕМ МНЕ ДЕРЖАТЬ ВСЮ ЛОГИКУ САЙТА НА ОДНОМ СЕРВЕРЕ? КАЖДУЮ ВИЗИТКУ У МЕНЯ ОБСЛУЖИВАЕТ ЧЕТЫРЕ СЕРВЕРА! НА КАЖДОМ СЕРВЕРЕ СТОИТ СВОЙ ФРЕЙМВОРК НА СВОЕМ ЯЗЫКЕ!
>>762335
#431 #762327
>>762295
Введи в гугле django static.
#432 #762330
>>762323
>>762042
Это такой троллинг? Код на перле, а не на питоне.
>>762340
#433 #762335
>>762326
Загугли что такое nginx, почему его сделали, и почему всегда используют связку nginx+любой сервер приложений. И не позорься тут.
#434 #762338
>>762323
Гугли "use strict".
>>762340
#435 #762340
>>762330
Вот это я обосрался.
>>762338
Сложнааа
>>762350
#436 #762350
>>762340
Забей ты на этот пистон. Тебя, видишь, сам боженька отворачивает от этой помойной ямы, в которой ты будешь до конца своих дней писать вебпарашу. Начни задротить перл, сможешь хотя бы легко и просто писать мелкую хуитку для своих нужд.
#437 #762351
А мне и не сказали, что код на перле, а не на питоне. Я его на питоне компилирую, а он не компилируется!
#438 #762353
>>762350

>вебпарашу


Что плохого в вебе?
>>762350

>сможешь хотя бы легко и просто писать мелкую хуитку для своих нужд


Но у меня нет таких нужд.
>>762356
#439 #762356
>>762353

>Что плохого в вебе?


В том, что он представляет из себя сейчас -- все.

>Но у меня нет таких нужд.


Хорошо.
>>762385
#440 #762376
Есть какие-нибудь advanced книги по питону? За пару лет он наскучил и кажется, что уже всё знаю.
>>762387>>762395
#441 #762379
>>762350
10 вакансий на всю россию.
84 Кб, 1300x1260
#442 #762385
>>762356

>В том, что он представляет из себя сейчас -- все.


Да что не так то? Ты делаешь меня задуматься. Получается я зря полгода на веб потратил?
>>762422
#443 #762387
>>762376
Валом:

Programming Collective Intelligence
Problem Solving with Algorithms and Data Structures
SICP на питоне http://www-inst.eecs.berkeley.edu/~cs61a/sp12/book/index.html
The Python Standard Library by Example
Fluent Python
Python Algorithms: Mastering Basic Algorithms in the Python Language
Python Essential Reference
http://pythontips.com/2016/02/27/learning-python-for-data-science/
https://github.com/ujjwalkarn/DataSciencePython
Functional Programming with Python
Python Unlocked
Python for Data Analysis

Ну и никто не запрещает Кормен, Кнут или Стивена Скиена по алгоритмам, Сейджвика и прочие CS читать а потом на питоне реализовывать.
>>762407
#444 #762389
>>762297
Спасибо большое, обращусь на днях, когда более-менее смогу сформулировать пару-тройку вопросов
>>762296
Данке шен, чятик тоже попробую
25 Кб, 907x527
Ъ питоношелл #445 #762392
Хосподи, какая же годнота - http://xon.sh/index.html
#446 #762395
>>762376
Стандартную библиотеку всю вызубрил? От корки до корки? Можешь поковыряться в ast, посношать парсер/компилятор, попробовать в самомодифицирующийся код/кодогенерацию, собственно, that's all, folks. Ну а хуле ты хотел, это тебе не лишп с хачкелем.
>>762407
#447 #762407
>>762387
Половина по дата саенсу/алгоритмам, но все равно спасибо.

>>762395
Практически всю. Похоже, настало время перекатываться куда-нибудь ещё.
#448 #762422
>>762385
Конечно! Учи хаскель, будешь смеяться над вебопущенцами.
>>762514>>762519
#449 #762514
>>762422
Статическая типизация сосет. Учи clojure
>>762519
#450 #762519
>>762514
>>762422
Ладно, умники, уёбываю в свой уютный пых тред.
>>762556
#451 #762556
>>762519
У тебя еще есть шанс!
#452 #762567
https://ideone.com/U9Q29f

Вроде как должно брать целое число и печатать сумму цифр.
Но работает не всегда, у меня в ком. строке выводит плавающие иногда.
>>762569
#453 #762569
>>762567
6 строчка:
new_n = (new_n - s)//10
#454 #762580
Анончик, как из родительского класса вызвать класс-потомок?
>>762583
#455 #762583
>>762580
Зачем?
Родительский класс не должен знать о своих потомках
>>762597
#456 #762597
>>762583
Если спрашиваю - это значит, что оно нужно. Помогите, плес.
>>762599>>762602
#457 #762599
>>762597
Нет, не нужно. Если это нужно, то ты гарантированно пишешь несопровождаемый код.
>>762601
#458 #762601
>>762599
Нет, нужно.
#459 #762602
>>762597
__subclasses__() ?
#460 #762603
А, да, не нужно. Простите, я даун и аутист. Простите.
#461 #762659
А на чем кстати Макаба написана? В плане ui она охуительна
>>762664
#462 #762664
>>762659
## Кодер ##
>>762721
#463 #762713
Хочу написать небольшого бота, который будет автоматизировать действия распознавая объекты. Вопрос что использовать? Есть некий deep learning, опыта нет, там нейросети и… это всё, что я об этом знаю. Есть opencv, там алгоритмы для работы с картинками, есть небольшой опыт. Собственно, что использовать проще и надёжнее? Возможно есть что-то ещё. В общем, молю.
>>762741
#464 #762721
>>762664
Что простите?
#465 #762741
>>762713
Какие объекты? Ты уверен, что для этого нету какой-то апишки? Сканить экран - не лучшее решение обычно.
>>762776
#466 #762764
Петян, какими модулями обмазаться, чтобы ковырять mp3/flac файлы и возможно m4a, ogg на уровне отдельных сэмплов, дабы искать длительные промежутки тишины?

хочу что-то универсальное, чтобы с многими форматами работало.
#467 #762776
>>762741
В данной ситуации это бот для игры и мне нужно распознать npc, чтобы потом на него мышкой клацнуть.
>>762991>>763252
#468 #762803
>>762764
В WAV конвертуй
@
Сэмплы воруй
#469 #762804
>>761692
те три точки как бы намекают тебе, что ты внутри цикла и шансов выбраться без отступа в 4 пробела у тебя не так много
#470 #762808
>>762764
Только обёрточка для ffmpeg'а на ум приходит
#472 #762823
>>759652
https://github.com/raymestalez/lumiverse

Вот неплохой код на джанге, на личинку миддла. Правда комментариев нет, но они там и не нужны, итак все ясно. И вьюхи процедурные, а не CBV. Еще стоит почитать сорцы джанговских библиотек. https://www.djangopackages.com/

Имхо зашквары - использование raw sql в случаях когда таки можно сделать на ORM, копипаст вместо использования многочисленных гуд практис (типа банального наследования), наименования полей типа TsenaRubli, годами сидеть на древних версиях вроде 1.4 "оно работает и ладно", велосипедизм в разных проявлениях, монолит из 1-го приложения вместо деления на мелкие части.
#473 #762859
Питонач, есть два сервера.
На одном гуникорн+джанго с батарейками заточенный, на другом - aiohttp искаропкиасинхронный.

Куда садиться с прицелом в будущее?
>>762878>>762882
206 Кб, 1366x768
#474 #762877
Я выучил синтаксис, и теперь решаю задачи из сборника Златопольского.
>>762880
#475 #762878
>>762859

> Куда садиться с прицелом в будущее?


В смысле?

Что изучать? Оба, очевидно.

Что выбрать для конкретной задачи? Зависит от задачи, очевидно.

Мне кажется, aiohttp - менее общее решение. Что ты будешь делать, когда у тебя появятся немного ЦПУ-баунд функции? Что ты будешь делать, когда захочешь фич нормальных веб-фреймворков? Но для некоторых задач самое то, просто и со вкусом.

диванный архитектор
>>762985
#476 #762880
>>762877
Умничка. Продолжай в том же духе. Я горжусь тобой и в тоже время завидую твоему трудолюбию и упорству.
#477 #762882
>>762859
Эти вещи вполне могут жить друг с другом. Джанга как обертка для постоянного хранилища, асинхронные технологии для каких-то частных применений, например держать в памяти огромный dict и с страшной скоростью отдавать из него данные через rest, либо пулять что-то в очередь.
>>762985
#478 #762891
Пидроны, кто из вас читал two scoops of Django?
отзывы-хуётзывы
>>762894>>762900
#479 #762894
>>762891

> платить 40 баксов за книгу по какому-то мелкому фреймворку

>>762897
#480 #762897
>>762894
ни понял
она ж в открытом доступе есть (на пиндосском), тычо
>>762899
#481 #762899
>>762897
То есть ты можешь её прямо сейчас открыть и посмотреть? Тогда нахуя ты спрашиваешь у нас? Ты поехавший?
>>762901
#482 #762900
>>762891
Годнота, лучшее что есть по джанге.
>>762902
#483 #762901
>>762899
эх, посмотреть то я могу. и, к слову, смотрю её
тут страничего мноха
и если б сказали, что она не ок - тогда б не пытался её осилять
ну логично же
>>762903>>762954
#484 #762902
>>762900
пасеба, братодруг
#485 #762903
>>762901
страничек*
#486 #762954
>>762901
Она не ок.
>>762974
#487 #762974
>>762954
ты меня не проведёшь!
#488 #762975
Аноны, я нуб в прогаче, вот сделал небольшой скрипт, который создаёт каталоги для html. Скажите, как можно сделать изящнее?
https://ideone.com/Q5ENrk
>>763049
#489 #762976
Посоны, где про примеси можно на православно-русском почитать? (джанга)
#490 #762985
>>762878

>Что ты будешь делать, когда у тебя появятся немного ЦПУ-баунд функции?


То же, что и сейчас на синхроне. Очереди-воркеры, процесс-пулы? Зато никакой ебли с IO и заранее настрой на async без всяких соблазнов.
А так-то нехватка вычислительных мощностей решается только добавлением вычислительных мощностей.

>Что ты будешь делать, когда захочешь фич нормальных веб-фреймворков?


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

>>762882
Согласен, могут (классическая связка джанго+торнадо). Но хотелось бы уйти от этой повышенной сложности и юзать что-то одно. Потому и вопрос встал.
#491 #762991
>>762776
БАМП!
#492 #763049
>>762975
shutil.copytree
а если по коду, то там, где html в файл пишешь лучше контекстный менеджер использовать.
with open('www/index.html', 'w') as file:
____file.write('...')
и не надо руками закрывать файлы.
>>763071
#493 #763071
>>763049

>shutil.copytree


Зочием?
Есть же os.makedirs
>>763075
#494 #763075
>>763071
Я о том, что можно было бы подготовить папку с файлами и потом её целиком скопировать одной командой.
>>763096
#495 #763096
>>763075
У меня только один вопрос: ЗАЧЕМ?

Если уж анон хочет тренироваться, то написал бы парсер, который выдирает из html тэги style и script, а также инлайн стили и сохраняет в файлы. Вот тогда это было бы полезно.
#496 #763118
сижу вот решаю простые задачи. офк не сразу получается но я не смотрю ответы я продолжаю пытаться. и вот ответ правильный и мне становится приятно
>>763156
#497 #763156
>>763118
Продолжай наблюдения.
#498 #763177
Возможно ли в питоне написать генератор случайных сииволов, удовлетворяющих регулярке (без велосипедов, естественно, распарсить регулярку, но это долго и уныло)
#499 #763228
Господи-боже, ну есть какой-нибудь человеческий иде без пятиминутной загрузки на моем нищепк, без аутирования с заучиванием хоткеев уровня вим, с сверткой кода, всплывающей документацией и еще чем-нибудь полезным? Я уже всё это говно перепробовал, везде чего-нибудь не хватает.
>>763236>>763240
#500 #763236
>>763228
Сорри, Бро, только пичарм на говнояве
Можешь еще Спайдер попробовать но он фуфлыжный
Можешь попробовать мс визаул студио коде - оно и под Линукс есть, но без главной фичи в умном авто дополнении конкретно питона оно не очень интересное
Атом/саблайм не тащат вообще.
Так что или Ява и пичарм, или вим. Вот и весь выбор.
#501 #763240
>>763228
Для мелких задач Spyder/Sublime с модами еще как пойдут.
>>763248
#502 #763248
>>763240

>Spyder


Меня название пугает. Боюсь пауков.
#503 #763252
>>762776
БАМП!
>>763282
#504 #763282
>>763252
Из посылаемых игрой пакетов ты выдрать ничего не можешь?
Распознавание нпс на скриншоте это как-то rick-o-sheetom-tcherez-zjhopoo
>>763297
#505 #763297
>>763282
Распознать могу, почти все пакеты доступны, но как именно узнать где npc на экране, а не во внутренних координатах игры?
>>763304>>763311
56 Кб, 560x420
#506 #763304
>>763297
Нужно больше ^евреев^ инфы.
На чем клиент игры, свободная ли камера, какие данные доступны.
А так гадание на кофейной брухле какое-то.
>>763315
#507 #763311
>>763297
честно - я бы наверное с другого начал. Через артмани посмотрел мож в памяти выводятся где нпц по-особому, потом бы уже гадал как из этого их координаты дёрнуть и тд
>>763315
#508 #763315
>>763304
>>763311
Игра diablo II, в онлайне. Я пробовал подменять и генерировать пакеты, чтобы автоматизировать свои действия. Это работает, но на сервере есть античит, который увидит эту подмену (по крайней мере в том виде, в котором я её делал). Поэтому я хотел сделать беспалевного бота в этом плане. Да, часть информации я могу собрать из приходящих пакетов, но тыкать хочется мышкой по картинке. Камера не меняется, игра изометрическая, то есть всё поле состоит из тайлов. Но тут есть проблема соответствия серверных координат и клиентских.
Поэтому я и подумал о всяких обучения, распознаваниях. Насколько это сложно не знаю, но эта тема, помимо прочего, мне интересна.
>>763445
#509 #763323
Я наверное чуть тормоз, а celery без RabbitMQ или Redis работать будет?
>>763437
#510 #763423
В качестве тренировки "пишу" простенький парсер(используя bs4) для авито с последующим выводом в локальную веб-страницу без рекламы и левака. Вопрос такой: какова вероятность бана по ip, если перебирать всю выдачу по запросу без таймаута? Сколько секунд лучше ставить таймаут?
>>763430
#511 #763430
>>763423
Пробуй разные значения, бан-то на несколько часов.
>>763433
#512 #763433
>>763430
я там еще не бывал, благодарю
#513 #763437
>>763323
Можно и другие брокеры использовать, но тебе в любом случае нужно где-то хранить список задач.
#514 #763445
>>763315
OpenCV, нейросети.

Я сейчас "балуюсь" задачкой распознания функции.
Есть набор данных (2д-координат), который получен от некоего условно реального процесса, но в то же время известно, что этот набор должен соответствовать некоторой типовой функции (y=kx+b, y=ax^2+bx+c, y=e^x, и другие). Простыми вычислениями не получить ничего, так как данные в наборе слегка зашумлены.
Забавно видеть, как сначала сетка успешно учится на тестовых данных отделять один класс функций от остальных, но когда выдираешь один нейрон из какого-то слоя - уже не может научиться.
>>765139
#516 #764522
>>760695

Ну как минимум куки и юзер агент надо проверять еще.
#517 #764527
>>760695
Почитай официальный туториал хоть на том же джбук.ру
Он как раз о голосовании
#518 #764541
>>762350

Сразу хачкель.
#519 #765139
>>763445
что ты несёшь? какой нейрон ты там выдёргиваешь? один нейрон ничего полезного не даст, всё в том, как они работают вместе.
Тред утонул или удален.
Это копия, сохраненная 26 июня 2016 года.

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

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