Двач.hk не отвечает.
Вы видите копию треда, сохраненную 18 июля 2016 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
66 Кб, 600x510
Python Thread #779413 В конец треда | Веб
Шапка: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat
Код вбрасывать в тред через https://ideone.com/
Прошлый: >>770407 (OP)
#2 #779417
как начать писать на фласке?
>>779418
#3 #779418
>>779417
просто берешь и пишешь
>>779419>>782006
#4 #779419
>>779418
нет. нужно сначала изучить материалы по этом фреймворку. кто какие посоветует?
>>782006
#5 #779445
Не встречал ли никто модуля для работы с эппловскими табличками из Numbers (аналог excel'я)? Или, может, хотя бы человеческое описание формата? Там внутри, в отличие от экселя, обычная xml'ка, сжатая зипом (впрочем, можно и не сжимать), но огроменная с не очень явным описанием ячеек (данные просто подряд идут, без, например, прямых указаний "колона 1 ряд 2"), поэтому разбираться не один вечер нужен.
>>779452
134 Кб, 1280x806
#6 #779449
Пацаны, нид хелп
Нахожусь в командировке
Имею вин-10 ноут с ебанутым UEFY на который ещё и ставить толком ничего нельзя из альтернативных систем
Внезапно нужно до пнд запилить простенький сайтец-одностраничник
Хочу сгенерировать его на https://github.com/eudicots/Cactus или http://blog.getpelican.com/ и потом доводить до ума, ведь шеф тот ещё эстет.

А теперь, внимание, вопрос знатокам:
Как мне всё это провернуть из-под блядской винды? И какой сайт-ген выбрать? Где брать джанго-шаблончики для Кактуса и тд
>>780419
#7 #779452
>>779445
В csv сохранить можно?
>>779496
#8 #779496
>>779452
Можно. И в эксель, и в пдф можно, только мне не просто данные один раз выдрать хочется (вручную открывать файл для экспорта ведь нужно), а просто работать с ним из соснольки, добавляя, удаляя и изменяя данные, не теряя при этом также и форматирование (группировки и т.д.).
#9 #779518
нет. нужно сначала изучить материалы по этом фреймворку. кто какие посоветует?
#10 #779573
Призываю тех, кто работал с бутылкой. Вопрос: как мне сделать аналог редиректа без выброса эксепшона и передачи старого реквеста, т.е. просто переход по сслыке?
>>779576
#11 #779576
>>779573
Функцией redirect?
>>779579
#12 #779579
>>779576

>без выброса эксепшона и передачи старого реквеста


Между получением запроса функцией и этим самым редиректом проходит слишком много времени, так что тамошний апач всё ломает по таймауту, в который обработка запроса не укладывается. Если б можно было редирект использовать, так и делал бы.
>>779610
#13 #779610
>>779579
И правда raise res.
Тебе просто надо установить статус код, установить заголовок Location, вернуть response.
response.status = 302
response.set_header("Location", redirect_url)
return response
Все как и в функции redirect, только без копирования объекта.
>>779640>>780370
#14 #779640
>>779610
Ну, по крайней мере, у меня получилось.
>>780370
#15 #779657
Обмазался Pyinstaller - это просто клево. Под винду скомпилировался отличный exe со всеми библиотеками. Сегодня под мак попробую.
#16 #779667
15 интересных библиотек под Python
http://blog.yhat.com/posts/11-python-libraries-you-might-not-know.html
#17 #779677
Хочу написать скрипт, который будет чекать каждые 30 секунд перезаписан ли файл. Но т.к. я хеллоувордщик, то прошу помочь. Не обязательно писать за меня код, просто направьте в нужном направлении.
#18 #779680
>>779677
Можно проверять время изменения.
Можно проверять хеш-сумму.
Уверен, что есть ещё варианты.
69 Кб, 1085x456
#19 #779689
Купил книжку. Много раз пытался освоить Flask. Эта с видео-лекциями. Особо отмечается, что она обновлена под 2016 год. Качаю. Гигабайт - это видео лекции+книга.
34 Кб, 543x550
#20 #779690
Ебать питон простой. 3 строки вместо 15 моих обычных велосипедов.
бывший пхп-урод
#21 #779695
>>779689
Но ведь последнее обновление flask было в мае. Ты уверен, что они его учли? Когда книга была выпущена?
#22 #779696
>>779690
Ебать, а больше/меньше не судьба проверять?
>>779700
#23 #779700
>>779696
А, ну можно. Просто это универсальный вариант: для цифр, строк, букв, элементов и т.д. С больше/меньше можно работать только с числовыми типами данных.
>>779703>>779706
#24 #779702
>>779689
>>779695
Семён рекламщик, плиз. Сейчас же будет пост "учли конечно!", да?
#25 #779703
>>779700
То есть, я всего его использую для проверки: есть в списке/котреже/словаре это значение, независимо от его типа данных. Просто это дает универсализацию, т.к. всегда понятно, что тут проверка на совпадение. Хотя для больших массивов и кортежей такая хуйня не подходит. Но никто не делает большие кортежи, делают БД и работают с ней. Так что, блять, нормально тут все.
>>779706
#26 #779706
>>779700

> Просто это универсальный вариант


С чего бы? range только для чисел

>>779703
То, что для проверки, входит ли число в диапазон, используется проход по итератору - это нормально? Да это же говнокод пиздецкий
>>779712
#27 #779707
>>779695
Когда платишь за что-то деньги, то не хочешь, чтобы они были потрачены зря. Когда книгу скачиваешь бесплатно, она порой лежит мертвым грузом. А когда покупаешь, то читаешь из принципа. Лично на мне это работает.
>>779711
#28 #779708
>>779690
И, кстати, на пхп это тоже скорее всего можно уместить в малое количество строк. Просто ты такой говнокод пишешь
>>779712
#29 #779711
>>779707
Как твои философские сентенции связаны с моим вопросом?
>>779714
#30 #779712
>>779706
Я в range подставил длину конкретного списка. Мне нужно было, чтобы он запонял список символами от low до high.
>>779708
Можно, но я, как правило, не использую стандартные функции, если пишу для себя. Это настраивает мозги. В питоне и так все слишком просто.
Но я не отрицаю того, что пишу говнокод. Просто я люблю его писать.
>>779718
#31 #779713
>>779695
У этого издательства был промоушен, бесплатно дали книгу. Я её скачал почитал, очень понравилось про патерны. Толково написано.
>>779720
#32 #779714
>>779711
троль на дежурстве
#33 #779717
Ебучий препод по объектно-ориентированию сказал делать курсовик на джаве.Внятного ответа на вопрос "Почему нельзя использовать Python" я так и не смог.Мои доводы о том, что ооп на питоне продумано ничуть не хуже чем на этой ебаной джаве его не заставили передумать, а я не хочу создавать сто экземпляров только для того, что-бы вывести хулоуворд или сходить посрать.Что же мне делать, анончик?Этот вопрос стал для меня вопросом веры
#34 #779718
>>779712
Просто вариант с range будет очень плохо обрабатывать на больших диапазонах (O(N^2)). А сравнение O(1)
>>779721>>779722
#35 #779719
>>779717
А я джаву буду учить после того, как закончу книгу по питону.
#36 #779720
>>779713
Я спрашиваю когда она вышла и учли ли в ней последнее обновление.
>>779756>>779758
#37 #779721
>>779718

> обрабатывать


отрабатывать
#38 #779722
>>779718
Ну я знаю, поэтому сказал, что для больших диапазонов аж два for'а со сложностью n^2 - идея не хуевая, а очень хуевая. Но для больших диапазонов логичнее юзать БД.
#39 #779756
>>779720
Какой ты злой. Травишь весь тред. Я тебе специально не отвечу
87 Кб, 680x641
18 Кб, 645x361
#40 #779757
и ведь не соврали блять!
>>779762
#41 #779758
>>779720
Книга и лекции для полных нубов во фласке вроде меня. Так что отстань.
>>779763
#42 #779762
>>779757
Flask хвалят тем, что более гибкий чем Джанго.
>>780373
#43 #779763
>>779758
Главное, чтобы ты потом не жаловался, что flask плохой и у тебя не работает.
>>779766
#44 #779766
>>779763
Я не буду жаловаться. С фласком уже имел дело. Работает прекрасно. Но никогда далее хеллоу ворд я не заходил. Насчет обновление, оно вообще никак не ломает предыдущий апдейт. Поэтому я и говорю, что ты злой.
#45 #779770
>>779413 (OP)
как люблю я кодить чушь
на питоне
а потом делиться ей
в идеоне
покажу братулям с пр
результаты
но не видеть никогда
мне зарплаты
>>779788
67 Кб, 950x1144
#46 #779772
>>779689
Поделишься с анончиками?)
>>779786
#47 #779773
>>779717

>объектно-ориентированию


На местности?
>>780084
#48 #779786
>>779772
Если бы она весила мег 30, то с удовольствием. Но вся книга - это видеолекции, гигабайт.
>>779796>>779806
#49 #779788
>>779770
Бедный троль, скучно ему. Сходи ка в /b
>>779789
#50 #779789
>>779788
ни разу не траль. Это мой путь
>>779792
#51 #779792
>>779789
Мову английскую выучи
>>779794
#52 #779794
>>779792
Да я и учу. But it's hard, doge, HARD
#53 #779796
>>779786
Ну гигобайт это же хуйня в наше время, залей на яндексдиск или еще куда, ну или торрент раздачу замути.
#54 #779799
>>779689
есть епаб/пдф/киндл её?

Кстати, хлопцы, у меня в пределах тыщ 20 в мес есть финансирование на книжки-курсы и тд по работе, хоть я его и спускаю на всякое говно типа новых клавиатур и тд
Так может это, кидайте мне реквесты на книги а я если оно и мне покажется пиздатым и не смогу найти уже запираченную версию - куплю да отсыплю на ргхост
#55 #779801
>>779799
Хрена себе, щедрость твоя не знает границ. Мое увожение
#56 #779806
>>779786
У меня облака забиты фотками. Я в свободное время моделей фотаю.
>>780087
#57 #779809
Кто-нибудь обмазывался этим? https://www.freecodecamp.com/
Какие ощущения?
>>779835
#58 #779812
Что такое str? Это дефолтный объект для стрингов?
>>779813>>779818
#59 #779813
>>779812
kamasutra = put.str(pi#da)
>>779817
#60 #779817
>>779813
Не, имею ввиду например в коде просто написать str, что этот объект сам по себе представляет?
>>779820>>779829
#61 #779818
#62 #779820
>>779817
str = "Mary has a little lamb"
for word in str.split(" "):
print word
>>779823
#63 #779822
Аноны, как работать с аудио в Питоне? Конкретно нужно замедление треков.
#64 #779823
>>779820
Вот более полезное применение
str = "25/06/2016 21:00:05"
date= str.split(" ")
print date[0]

>>25/06/2016

>>779824
#65 #779824
>>779823
Ты вообще вопрос мой читал?
#66 #779829
>>779817
str используют для конвертации в строки из значения int
num3 = str('333')
>>779831>>779834
#67 #779831
>>779829
бля глючу сегодня num3 = str(333)
#68 #779834
>>779829
Да блядь, я за объект говорю.
Открываешь блядь пустой файл, пишешь там str.
и после точки выпадает куча методов просто ни с хуя для неинициализированного объекта. Запускаешь код, и никаких ошибок.
А вы мне за функции какие-то ебаные.
>>779840>>779841
#69 #779835
>>779809
Какая то фигня. Фронтенд, жабийскрипт
#71 #779841
>>779834
str - тип для строки, как Dict для словарей, set для множеств и т.п.
#72 #779854
Аноши, я в отчаянии, и прошу сказать мне, что вы в данный момент кодите? Над чем работаете?
#73 #779856
>>779854
Бота под ирку пилю, в процессе разбираюсь с питоном.
>>779858
#74 #779858
>>779856
А кто то еще сидит в ирках? Не знал. Спасибо за респонсе
#75 #779886
>>779854
Делаю прогу на продажу для хранения инфы с шифрованием.
>>779887
#76 #779887
>>779886
Инфы, это текста? Спасибо за овтет на мой ответ
>>779894
#77 #779894
>>779887
Текст, но необычный текст, который требуется шифровать.
>>781040
#78 #779917
Почему переопределение __lt__ не дает нормального результата для оператора сравнения, как в тех же плюсах?

Т.е. переопределил __lt__ для класса. Yoba(2) и Yoba(5)
Yoba1 < Yoba2 (true)
Yoba2 < Yoba1(false)

Попробовал Yoba1(2) и Yoba2(2)
Yoba1 == Yoba2 (false) ????? Патчиму?
>>779946
#79 #779946
>>779917
Определи магический метод __eq__
>>779947
#80 #779947
>>779946
Так чому оно неявно не работает, как в плюсах? Там достаточно определить <, и все остальные операции будут через него спокойно работать.
>>779948
#81 #779948
>>779947
Так как явное лучше, чем неявное.
>>779953
#82 #779953
>>779948
Ебаный стыд.
#84 #780056
Так, у меня есть список файлов. Но ведь это всего лишь текст, не связанный с ИРЛ-файлами. Как мне его привязать к файлам? Как мне с ними работать?

>>779677 - (говнокодер)кун
>>780078
#85 #780078
>>780056
os.stat(path).st_mtime
#86 #780084
>>779773
лень было полностью писать
#87 #780087
>>779806
ну ты и жмот
#88 #780089
Необходио скриптом протестировать, скажем, какую-нибудь систему следующим образом:
1. Выполнить все необходимые функции, независимо от результата предыдущих.
2. Выдать False, если хотя бы одна из них не отработала верно. (Функции возвращают True/False, свидетельствую об успешном или нет выполнении.)

Есть ли более красивый/умный/правильный способ, чем вот это - http://pastebin.com/9s8WBhH4 ? funcN изменять, вставляя выставление флага именно в них, не желательно.

Без привязки к питону или питонобиблиотекам, делается всё в Lua.
>>781864>>781908
#89 #780113
>>779854
Делаю погодную информационную хуйню на orange pi. Прогноз там, хуе моё с LCD дисплеем. Заодно питон изучаю.
>>781041
#90 #780163
Платиновый вопрос. Что используете в идеале в продакшене, Python 2 или 3?
#91 #780167
>>780163
А какая тебе разница? Из-за того, что какой-то левый хуй использует #, ты тоже на нём начнёшь писать?
#92 #780172
Как сделать, так чтобы при каждом цикле в конец слова добавлялось поочередное число? Например "Вася1" при первом цикле, "Вася2" при втором цикле?
>>780695>>781091
#93 #780191
>>780163
В продакшоне 2, конечно же. На 3 ещё пару лет на локалхосте только писать. Фласк на тройке нестабилен, Твистед ещё не переписали.
#94 #780201
>>780163
2 и 3
#95 #780220
>>779799
А книги только по питону?
>>780272
#96 #780221
>>779799
Хуясе, братан, купи мне дарк соулс 3
>>780272>>780302
#97 #780254
Питонач, посоветуй видео-гайд (можно на анлийском), в котором освящаются следующие моменты:
Покупка хостинга, покупка домена, заливка сайта с локалхоста на хостинг, и установка домена, чтобы получился в итоге рабочий сайт.
Проблема в том, что сделать проект на локалхосте я могу, а как этот проект засунуть в сеть практически не представляю.
>>781847
#98 #780272
>>780220
Ну можно ещё по чему, что будет мне самому интересно.
Пока это правда только питон, и ничего другого я особо не учу, но мало ли.
>>780221
Отправил инвайт на лепру
#99 #780286
>>780272
А какие есть книги которых нет в открытом доступе? Скинь ссыль где посмотреть
>>780289
#100 #780289
>>780286
Ну вон выше по треду парень что-то по фласку купил.
А так я ссылок не знаю, пока всё что мне хотелось найти я находил
#101 #780296
>>780272

>Отправил инвайт на лепру


Ну че злой такой
#102 #780302
>>780221
Напиши его себе сам, ты же программист
>>780305
#103 #780305
>>780302

>ты же программист



Чем докажешь?
>>780309>>780327
#104 #780309
>>780305
С чего бы. Это ты давай, аргументированно опровергай
>>780311
#105 #780311
>>780309
>>780309
Бремя доказательства лежит на утверждающем.
>>780314
#106 #780314
>>780311
Лежало. Лежало на утверждающем.
>>780318
#107 #780318
>>780314
Гуляй. Литературу, заданное на лето прочти. Слушайся маму с папой.
>>780319
#108 #780319
>>780318
Слив защитан. Можешь больше не пыжиться
>>780325
#109 #780325
>>780319

>сделал утверждение


>метнул стрелки как только разговор зашел про пруфы


>этот голос со стороны параши..

>>780329>>780334
#110 #780327
>>780305
Хочешь сказать, что ты не программист?
#111 #780329
>>780325
Все как по методичке, не можешь опровергнуть - гринтексть.
#112 #780334
>>780325
Забыл где находишься? Тем более питонотред, самый популярный язык для школоты. Впрочем ты и сам уебок-нищеброд, хотя это лучше школоты канеш
>>780347
#113 #780347
>>780334
По моему шкальники не очень любят питон.
>>780349>>780351
#114 #780349
>>780347
Не знаю любят они или нет, но питон активно используется для обучения школоты. Да и во всяких курсах очень популярен.
#115 #780351
>>780347
Да взять тот же двач хуяч хабр и остальное говно.
На любой нюфаговопрос советуют питон.
#116 #780363
>>780272
Просто последнего издания книги по скале нет в сети и приходится учить по изданию 11 года
#117 #780366
>>779717
Он всё правильно сделал. В питоне нет внятного ООП. Там нет даже приватных методов и интерфейсов, не говоря уже о более сложных вещах.

>ооп на питоне продумано ничуть не хуже чем на этой ебаной джаве


За такой явный пиздёжь тебя обоссал бы любой нормальный программист.
>>780385
#118 #780369
>>780163
Очевидную 2. Тройка слишком сырая.
>>780375>>780392
#119 #780370
>>779640
>>779610
Да та же фигня - с мелкими файлами справляется, а на крупных дохнет, причём только редирект; ffmpeg то нормально конвертит до конца и файл потом доступен по ссылке, на которую должно было редиректнуть.
У меня ещё был план редиректить на какую-нибудь промежуточную страницу, которая мониторит активность ffmpeg'а или что-нибудь типа того, но хз, как это сделать.
#120 #780373
>>779762
>>779762
Ну так есть пирамид.
13 Кб, 425x506
#121 #780375
>>780369
А если я нюфаня и только вкатываюсь, мне тоже 2 учить?
#122 #780378
>>780375
тройку
не слушай этих ретроградов.
#123 #780382
>>780375
двойку
не слушай этих хипстеров
>>780384
#124 #780384
>>780382
ты наверно с 2003 свое говно на двойке лепишь вот и пиздишь, учить ее в 2016 зашквар.
#125 #780385
>>780366

>приватных методов и интерфейсов


А зачем они нужны в скриптовом языке? В компилируемых ладно, чтобы тебе за свой магический говнокод стыдно не было, а тут то зачем, если это всё и так любой увидеть может?
>>780392
#126 #780392
>>780385

>А зачем они нужны в скриптовом языке?


И никто и не говорил, что они тут нужны. Но их нет.

>>780369

>9 лет


>слишком сырая

>>780449
#127 #780419
>>779449
Да нахуй тебе лишние проблемы? Возьми лучше что-нибудь из разряда /пэхэпе/
#128 #780449
>>780392
Ей девять лет, а она до сих пор сырая.
#129 #780459
>>780375
Тройку однозначно. В ближайшие годы двойку перестанут поддерживать, тройка гораздо перспективней.
>>780463
#130 #780463
>>780459

>В ближайшие годы двойку перестанут поддерживать


Слышу это седьмой год.
>>780475
#131 #780475
>>780463
Подобные тебе луддиты мозги клюют
>>780653
29 Кб, 591x363
#132 #780642
Пришло новое предложение о работе. Зарплата 150 тыс долларов в год. Плюс оплачивают страховку. Прикрепил скрин.
>>780652>>781291
#133 #780652
>>780642
Релокейшен? Или ты уже местный?
>>780655
#134 #780653
>>780475

>Подобные тебе луддиты


Рано или поздно на любом языке создаются огромные легаси системы. Которые никто не будет переписывать, чтобы хипстеры были довольны. Это нормально писать в 2016 году на коболе. Потому что проект на нем УЖЕ РАБОТАЕТ и постоянно приносит деньги. А стартапы на самом можной петухфреймворке в 99% случаях приносят только убытки.
>>780668
#135 #780655
>>780652
Я местный. Но они ищут по всему миру. Тяжело найти толкового программиста. Предложение пришло в linkenid
#136 #780668
>>780653
Да, следовательно, ничто крмое кобола не нужно. На нем же уже все работает!
>>780680
#137 #780680
>>780668
Этот анон вводит тебя в заблуждение. Весь мир на самом деле пишет на Brainfuck, но рептилоиды скрывают сей факт, и при помощи тайной ложи нас убеждают учить кобол.
>>780683
#138 #780683
>>780680
Жиды пишут на коболе. И пишут как говно.
#139 #780695
>>780172
counter=0
string=''
for i in iter_object:
....counter+=1
....string+=Вася+str(counter)
>>780808
#140 #780808
>>780695
хуя ты долбоеб
можно короче

for i in range(1, 100500):
____print('Вася{}'.format(i))
#141 #780811
>>780808
а вообще какой-то хуевый вопрос
>>780828
#142 #780828
>>780808
>>780811
Нахуй ты ему отвечаешь?!
>>781087>>781088
#143 #780845
Рептилоиды, че можно накодить джвум студентам первачам по теме инфобеза?
#144 #780869
>>780845
Секурный мессенджер. пошли нахуй, терпилы
#145 #780932
>>780845
Змейку.
#146 #780948
>>780845
Частотный анализатор по подстрокам.
#147 #780952
>>780845
питонишь crypto 1 на курсере
#148 #781039
>>780845
стеганографию через последние биты цветности картинок и ее детектор
#149 #781040
>>779894
текстовое цп?
цп в аски-арте?
>>781285
#150 #781041
>>780113
много подводных в orange pi?
#151 #781043
>>779690

>бывший

#152 #781087
#153 #781088
>>780828
а чо?
#154 #781091
>>780172
кароч вот это должно подойти

def vasyan_gen(low, up):
____for i in range(low, up):
________yield 'Вася{}'.format(i)
>>781879
#155 #781106
>>780808
Твой код говно, поясню почему:
1. Во первых хуй знает, какие итерации ему еще нужны, поэтому я не задействовал итерации по range.
2. Во вторых тебя, мудилу, никто не просил выводить текст в stdout, не надо додумывать там, где тебя не просят. Просили склеить строки.
#156 #781108
может кто объяснить
что делают эти хуйни в celery: celeryev, celeryd?
#157 #781156
Питонач, я пишу свой твиттер на Джанго. Дошел до места, где нужно спроектировать ту часть бд, которая должно отвечать за "ленту новостей". Так вот, как в принципе решать эту задачу и решать правильно?

У меня получается таблица Подписки, с колонками: ид_юзер, ид_подписка_на_юзера, ид_сообщения. И таблица Сообщения: юзер, сообщение. Когда происходить сохранение в таблице Сообщений, ид_сообщения, ид_юзера сохраняется в таблице Подписок.

И когда приходит запрос, я из таблицы Подписки достаю последние 30 записей == ид_юзера. Потом делаю обход через for каждого объекта и сохраняю в массив ид_сообщения. И этим массивом выбирают сообщения из таблицы сообщений. И потом возвращаю render_to_response. Норм так?
#158 #781159
>>781156
Кажется, тебе бы не помешала нормализация бд.
#159 #781177
>>781156
Нарисуй свои таблицы и запросы в sqlfiddle, тогда может и не лень будет посмотреть
#160 #781185
>>781106

>Просили склеить строки.


вот это безграмотно и медленно

>string+=Вася+str(counter)


надо делать ''.join(collection)
#161 #781194
Как начать писать на фласке?

И как начать применять знания по питону на практике?
>>781291>>781293
5 Кб, 603x96
#162 #781200
>>781185
Но так быстрее.
>>781224>>781304
#163 #781213
>>780845
Агрегатор прона для безопасного просмотра с рабочего места.
>>781224
#164 #781224
>>781200
Потому что во втором случае ты потратил время на создание миллиона списков, чего в первом случае не делалось.
http://ideone.com/Is8gWC

>>781213

>для безопасного просмотра с рабочего места.


Это тебе фильтр на монитор нужен, что углы обзора снизить.
>>781229
#165 #781228
>>781156
Нихуя не понял. Нужны: таблица юзер, таблица сообщение, которая привязана к юзеру, таблица подписок. Выбираешь из таблицы пописок всех юзеров, проходишь по ним, берешь первые 30 сообщений у каждого.
#166 #781229
>>781224

>Потому что во втором случае ты потратил время на создание миллиона списков, чего в первом случае не делалось.


Будь добр, покажи как сделать тоже самое с join, чтобы было быстрее, чем str+= в этом конкретном случае. Буду очень благодарен.

>http://ideone.com/Is8gWC


Это какой-то синтетический пример, демонстрирующий совершенно другой случай.
>>781235
#167 #781235
>>781229
Ну почему синтетический, соединение элементов массива в одну строку не такое уж и редкое явление. Не есть много людей, которые через += его и реализуют.

>Будь добр, покажи как сделать тоже самое с join, чтобы было быстрее


http://ideone.com/nuK7XQ (даже генератор внутрь, для честности, запихнул)

Разница, однако, проявляется на больших цифрах. На малых на идеоне += даже выигрывает, хотя на моём компьютере это не заметно (на десяток-другой процентов += отстатёт от join). На 1млн разница в 4 раза, а на 5млн += просто захлёбывается, так как ему приходится уже мегабайтными кусками памяти туда-сюда бросаться (49сек против 2.42).

>в этом конкретном случае


Если ты именно про соединение исключительно "Вася" и "1", причём один раз, то нутыпонел.
>>781238>>781240
#168 #781238
>>781235
Так, я поебался, на идеоне join никогда не выигрывает. Слишком у них хорошие сервера.
#169 #781240
>>781235

>concat(3000000)


>join(2000000)


dr_foreman.jpg
>>781243
#170 #781243
>>781240
Ну сорян, залагало и не обновило, я ж не со зла. У себя запусти.
>>781248
#171 #781248
>>781243
Я запускал. Join проигрывает и этому есть объяснение. Не стоит так опрометчиво утверждать, что является "медленно".
>>781275
#172 #781275
>>781248
Значит, зависит от компьютера. Я ж не из головы цифры в прошлмо посте взял.

>Не стоит так опрометчиво утверждать


join быстрее, чем +=, это я уже показал выше. Быстрее ли создание списка/генератора + join, чем конкатенация? Оказывается, что скорее нет, чем да. Если что, >>781185 не я. Проверил сейчас на другом компьютере — тоже += побеждает.
>>781287
#173 #781285
>>781040
Ну, ты и школьник! Речь идет о финансовой информации.
>>781307
#174 #781287
>>781275

>join быстрее, чем +=, это я уже показал выше


http://ideone.com/P8vWfo
Здесь создается список один раз, правильно? Конкатенация все равно быстрее, правильно?
>>781290>>781331
#175 #781288
>>781185
Если есть желание поебаться (если надо склеить миллион васянов), то можно склеивать через конкатенацию bytearray. Но мне было это лень расписывать, т.к. тут видно, что васянов будет максимум тысяча, а для таких объемов похуй чем реализовывать, не на PIC-ах же интерпретатор запускается.
>>781306
#176 #781290
>>781287
На двух элементах возможно.
http://ideone.com/RKbZdZ
>>781296
#177 #781291
#178 #781293
>>782258
#179 #781296
>>781290

>На двух элементах возможно.


Что значит "возможно". Тесты показывают, что так и есть. Ты опять принёс какой-то надуманный случай, который не имеет отношение к конкретной задаче, зачем?
>>781297
#180 #781297
>>781296
А какая конкретная задача?
#181 #781304
>>781200
коллекцию побольше используй
#182 #781306
>>781288

>не на PIC-ах же интерпретатор запускается.


теперь это micropython треда
#183 #781307
>>781285

>Ну, ты и школьник!


>эта запятая


ладно

>Речь идет о финансовой информации.


отчеты от продажи цп?
#184 #781308
>>781185
ебать я я вбросил
извините парни, не со зла
#185 #781331
>>781287
На двух элементах огромный оверхед в виде вызова дополнительной функции. Но на таких размерах нет никакого смысла сравнивать же. Конкретно тут, на двух штуках, он может и быстрее, ладно, признаю (использовать жоин на двух строках это идиотизм, но думать о скорости при соединении двух струк это ещё больший идиотизм). Только толку? += расходует дохрена оперативки, постоянно пересоздавания строки, что потенциально и может привести к медлительности. Он плохо скалируется с количеством элементов, то есть там, где скорость-то и становится важной, а не пикосекунды сохранять.

Однако же, у тебя функции разне вещи делают. Даже http://ideone.com/fnBder у меня на компьютере, например, выдаёт на 30% лучшие результаты для жоина.

А сделай там 3 элемента (не миллионы, а просто 3!) и столько же +=, то уже и на идеоне жоин выигрывает. http://ideone.com/QEsp0f , даже скинув четверть времени за сброс переменной в пустую строку.
>>781386
#186 #781338
Немного ньюфажный вопрос, но меня он коробит - есть функция1 и функция2 в которой используется результат полученный в функции1, как мне КРАСИВЕЙ сделать вызов этих функций? я вижу три способа:
1.
йоба = функция1
функция2(йоба)
2.
функция2(функция1) получается коротко, но мне кажется НЕ КРАСИВО, мне одному так кажется?
3.
вызов функция1 в теле функция2 кажется коротко и ясно, но я чет хз, это нормальная практика?
>>781342
#187 #781342
>>781338
1 или 2 вариант, особо без разницы
>>781344
#188 #781344
>>781342
А чем плох 3ий вариант?
>>781345
#189 #781345
>>781344
Зависит от ситуации. Если ты можешь модифицировать функцию1 и результат функции2 используется только в функции1, то используй 3 вариант
72 Кб, 630x437
#190 #781386
>>781331
Прости, я продолжать дискуссию не буду.
>>781432
#191 #781421
Господа, скажите, пожалуйста, долго ли вкатываться к вам, зная джаву? Немного ебануто может звучит.
>>781426
#192 #781426
>>781421
Недолго, анон.
#193 #781427
Анании, как вам жаваскрипт?
#194 #781429
>>781427
В жс-треде обсуждаем питон?
#195 #781432
>>781386
Убедил?
#196 #781434
>>781427
Ужасен, серьезно, после лаконичности и понятности пистона - жабоскрипт выводит из себя.
>>781442
#197 #781442
>>781434
Тоесть, я после питона окунувшись в жабийскрип рискую проблеваться. Я почеу вообще тему поднял, глянул на вакансии, а там везде этот соловьиный язычок с его фреймворками, мне аж жутковато стало
>>781443
#198 #781443
>>781442
Погоди немного-хайп пройдет.
>>781618
#199 #781446
>>781427
Ну чуть туповат, ну неповоротлив, но жить можно. На чистом жс хуй кто пишет(но для тех кто пишет есть всякие велосипеды делающие жс чуть менее вырвиглазным, кофескрипт тот же), а фреймворки вкусовщина чистой воды типа выбери наименее тебе омерзительный и фигачь на нём.
#200 #781456
Аноны, вот выучил я python, реализовал парочку алгоритмов, связанных с криптографией. Но в нашей мухосрани на нем нет ни одной вакансии, вообще. Как себя продвинуть, что делать?
>>781477>>781598
21 Кб, 269x180
#201 #781458
57 Кб, 469x466
#202 #781477
>>781456
Не обижайте только меня и не оскорбляйте, я понимаю, что вопрос платиновый.
>>781480
#203 #781480
>>781477
Был бы я понаходчивей, я бы создавал вакансии на питоне по всей рашке. ЭХ
>>781518
#204 #781489
Я пишу свою поебень на Flask и я выкинул нахуй алхимию, ибо проще сразу писать sql, чем сначала sql, а потом думать как перевести его в orm. Но чисто строки sql в коде выглядят ужасно, может быть есть какой не уёбищный паттерн?
>>781504>>781505
#205 #781504
>>781489
Только на собеседованиях об этом не говори, сразу нахуй пошлют за голый сиквель.
>>781601
#206 #781505
>>781489
Как раз для этого и сделана алхимия.Никто не хочет видеть sql в питоновском коде
#207 #781518
>>781480
Вот, и ты сразу тролить. В интернете нет добрых/сердечных людей!
>>781545
#208 #781545
>>781518
но тровлинг, джаст сэинг. Рабочих мест нет, бизноса нет, везде 1
>>781546
#209 #781546
>>781554
#210 #781554
>>781546
но это дно, к сожалению
#211 #781598
>>781456
Подключиться к интернету.
#212 #781601
>>781504
Только в говновеб-стартапчегах. В приличных конторах пошлют за незнание сиквеля и нездоровую тягу к ОРМ.

> строки sql в коде выглядят ужасно, может быть есть какой не уёбищный паттерн?


Вызывать stored procedures по имени и кода SQL в пистоне не иметь.
>>781605
#213 #781605
>>781601

>пошлют за незнание сиквеля


>stored procedures


Свитер не палится.
>>781614
#214 #781614
>>781605
Это какой-то молодежный сленг? Что означает?
В соседнем треде видел выражение "оракли-свитера".

Судя по контексту, полагаю что-то похожее на "мудрый опытный специалист высокого уровня, при взгляде на которого у типичного обитателя /pr вырабатывается желчь в количестве требующем немедленного выплеска, каким бы беспомощным вскриком не выглядела его бессмысленная реплика".
#215 #781618
>>781443
Программисты на фортране до сих пор так рассуждают.
>>781626
#216 #781626
>>781618
Хайп действительно пройдет.
Но после него будет новый хайп.
251 Кб, 1971x2160
#217 #781664

> How can you remove the second and third element of a list called L?


> Select the single best answer:



[CODE]A. L.del(1,2)
B. L.delete(1,2)
C. L.remove(1,2)
D. del L[1:2]
E. L.del(L[1:2])[/CODE]
>>781851
#218 #781822
У Питоновой Марьи Петровны
За ночь выросла третья нога.
Она мужу сказала влюбленно:
"Я тебе теперь так дорога".

Но Ванюша был парень убогий,
У него вовсе не было ног.
"Поцелуй мою третию ногу,
И тебе испеку я пирог".

А Ванюше обидно так стало:
"Я калека, не трогай меня!"
Изо рта у него выползала
Очковая большая змея.

Испугалася Марья Петровна,
И пустилась по улице вскачь,
И стонала, и плакала, словно
Шел за ней перламутровый врач.

В отделенье милиции строгом
Закричала: "Родные мои,
Вы спасите мне третию ногу,
От очковой избавьте змеи!"

Было в комнате тихо, прохладно,
Только с подпола слышался стук.
С голубого лица лейтенанта
Улыбался надменный паук.
#218 #781822
У Питоновой Марьи Петровны
За ночь выросла третья нога.
Она мужу сказала влюбленно:
"Я тебе теперь так дорога".

Но Ванюша был парень убогий,
У него вовсе не было ног.
"Поцелуй мою третию ногу,
И тебе испеку я пирог".

А Ванюше обидно так стало:
"Я калека, не трогай меня!"
Изо рта у него выползала
Очковая большая змея.

Испугалася Марья Петровна,
И пустилась по улице вскачь,
И стонала, и плакала, словно
Шел за ней перламутровый врач.

В отделенье милиции строгом
Закричала: "Родные мои,
Вы спасите мне третию ногу,
От очковой избавьте змеи!"

Было в комнате тихо, прохладно,
Только с подпола слышался стук.
С голубого лица лейтенанта
Улыбался надменный паук.
>>781845
Делюсь опытом. #219 #781842
Сделал сприпт. Поставил pyinstaller, скомпилировал exe. Работает отлично. Перегрузился под мак OS X El Capitan. Скомпилировал app, крешается на записи файлов на диск. Это именно скомпилированный вариант. Гугление вопроса выявило, что 1) нужно указывать полный путь к файлу 2) и не глючный вариант такой

> import sys, os


> path = os.path.dirname(sys.argv[0])


Откомпилированный вариант заработал без проблем.
Dmitriy #220 #781844
>>779413 (OP)
Он кроме Gentoo где-то юзается?
#221 #781845
>>781822
Вот мы здесь, нам смешно и обидно!
Нет тимлида, грядущее-мрачно
И по нам все отчетливо видно
Хоть все вовсе не так однозначно

Мы как мальчик в походе ко шлюхам
"Может, даже получится вдуть им"
Разработаем свой компилятор
А язык назовем - Putin
#222 #781847
>>780254
debian + uwsgi + flask + python
#223 #781851
>>781664
Н-но ведь они все неправильные.
#224 #781854
>>779677
Я делал такую прогу, за три часа сделал, год назад. Надо поискать. Она смотрела все изменения в директории и когда появлялось, что-то новое или файл изменялся, прога копировала все в резервную папку. Такая нужна?
#225 #781864
>>780089
бамп?
#226 #781878
>>781106
так блять он сам вопрос сформулировать не смог
#227 #781879
>>781106
вот збс сделал
>>781091
#228 #781908
>>780089
Набросал, вроде то что тебе нужно.
ideone.com/dnwD6E
>>781915
#229 #781915
>>781908
Нууу, там ведь и другие действия могут быть между функциями, вроде тех же логов/инструкций. Да и иногда-таки нужно пропускать что-то, если предыдущая зафейлилась Хотя сохранение результатов в спиок и проверкой в самом конце, наверное, неплохо, но это l.push(func()) делать постоянно.

Вообще, то, как у меня сделано, это коряво или норм и я зря парюсь? Я думал, может есть какой кардинально другой подход к подобному заданию.
>>781921
#230 #781921
>>781915
Криво сделано. Добавляй результаты в список и в конце проверяй.
#231 #781955
>>779413 (OP)
1. Как поднять сайт с джангой на VPS с наименьшей еблей?
2. Как происходит процесс исправления ошибок/разработки фрилансером, когда он получает подобное задание? Ему дают доступ к сайту, высылают исходники проекта или как? Если он сам разрабатывает сайт, то он исходный код отсылает или сам его правит на сервере, или сам сервер конфигурирует?
>>781972
#232 #781972
>>781955

>1. Как поднять сайт с джангой на VPS с наименьшей еблей?


Заменить джангу на нормальный фреймворк.

>2. Как происходит процесс исправления ошибок/разработки фрилансером, когда он получает подобное задание? Ему дают доступ к сайту, высылают исходники проекта или как? Если он сам разрабатывает сайт, то он исходный код отсылает или сам его правит на сервере, или сам сервер конфигурирует?


Зависит от заказчика. По разному.
>>781990>>781998
#233 #781990
>>781972

> нормальный фреймворк


yii?
#234 #781998
>>781972

>Заменить джангу на нормальный фреймворк.


Почему он тебе так не нравится? Для меня просто аналогов нет, потому что на пхп очень неприятно что-то писать.
#235 #782004
Анон, помоги квкатится. Хочу изучать Питон, знаю JS, HTML,CSS. Какую литературу нужно читать?
#236 #782006
>>779419
Мигель Гринберг же
а вообще >>779418 дело говорит. Наделаешь ошибок начнешь копать по своим проблемам
#237 #782020
Боже, как заебали эти охуительные советы про ПРОСТО БЕРЁШЬ И ПИШЕШЬ)))) НУ ТАМ ТИП АШИПКИ НО ТО АБУЧЕНИЕ

Когда я начинал врубаться в фреймворки я блядь даже не понимал что такое mvc модель. Прочитать в вики прочитал конечно что это, а вот как эту хуйню делать в душе не ебал. И да, до этого опыта с фреймворками не имел вовсе.
Таки что я хочу сказать? До того как ПРОСТО БЕРЁШЬ И ПИШЕШЬ))))))))))) найди штук пять туториалов, может даже пару книжек и перепиши всё что в них есть пытаясь врубиться в то, что тебе объясняют, потом на гитхабе вбивай "название фреймворка + название целевого приложения" и смотри что люди пишут. По-хорошему из глаз потечёт кровь от говнокода, психанёшь и напишешь глядя на васянопроджект свой чуть менее быдлокоднутый. Повторяешь until profit, а потом конечно просто берёшь и без задней мысли пишешь всё что захочется.
>>782035
57 Кб, 640x670
#238 #782021
Йоу, а вот этот ваш pycharm, его надо пиздить с торентов или можно обойтись комьюнити эдишн?
>>782040
#239 #782035
>>782020
два чаю хацкеру
#240 #782040
>>782021
Комьюнити хвататет.
#241 #782054
Анон, почему, когда я делаю проход по словарю с помощью for, то каждый раз значения ключей печатаются в разнобой, а не по порядку? Что за магия?
как починить?
Для примера:
https://ideone.com/9vV2zQ
#242 #782056
>>782054
OrderedDict
>>782060>>782073
#243 #782060
>>782056

>OrderedDict


Мерси, благодарю тебя... мерси, спасибо что ты еееесть!
#244 #782063
>>782054
Порядок "случайный", но, насколько я помню, постоянный. То есть, сколько бы ты раз словарю не проходил, всегда будет один. Или я ошибаюсь?
>>782070
#245 #782070
>>782063
Ошибаешься.
>>782081>>782114
#246 #782073
>>782056
Тэкс, что-то я не врублю. Вот захотел я инвертировать словарь (напечатать вперед ногами), но не могу из-за случайного порядка. Этот orderedDict чому-то не работает.
>>782157
#247 #782081
>>782070
И когда тогда порядок может поменяться, при условии, что ключи не изменяли (добавляли/удаляли)?
>>782091
#248 #782091
>>782081
Никогда.

> If keys, values and items views are iterated over with no intervening modifications to the dictionary, the order of items will directly correspond.



https://docs.python.org/3/library/stdtypes.html#dictionary-view-objects
>>782114
#249 #782114
>>782091
Получается, я не ошибался. Так-то, >>782070
!
sage #250 #782125
>>779413 (OP)
обоссал закуток питоношкольников
#251 #782150
Как начать писать на фласке?

И как начать применять знания на практике?
>>782154>>782258
#252 #782154
>>782150

> найди штук пять туториалов, может даже пару книжек и перепиши всё что в них есть пытаясь врубиться в то, что тебе объясняют, потом на гитхабе вбивай "название фреймворка + название целевого приложения" и смотри что люди пишут. По-хорошему из глаз потечёт кровь от говнокода, психанёшь и напишешь глядя на васянопроджект свой чуть менее быдлокоднутый. Повторяешь until profit, а потом конечно просто берёшь и без задней мысли пишешь всё что захочется.

>>782161>>782247
#253 #782157
>>782073
OrderedDict работает.
>>782240
#254 #782161
>>782154
туториалы только протухшие остались
>>782170
#255 #782170
#256 #782202
Дочитываю "Укус питона". Что дальше? Делать много несложных задачек или сразу переходить на Лутца?
>>782213>>782232
#257 #782213
>>782202
наверни think python
>>782232>>782235
#258 #782232
>>782202
какие задачки ты собрался делать?

>>782213
то же самое щас собрался делать, дочитывать синк питон.
>>782238
#259 #782235
>>782213
Спасибо, так и сделаю
#260 #782238
>>782232

>какие задачки ты собрался делать?


Онлайн учебники всякие с кодингом в браузере
#261 #782240
>>782157
Да работает, понял уже как им пользоваться, правда он как-то по-уебански работает. Запилил вот свой вариант reversed.
https://ideone.com/cy5IrF
>>782246>>782255
#262 #782246
>>782240
collections.OrderedDict(reversed(d.items()))
>>782248
#263 #782247
>>782154
давай по делу
#264 #782248
>>782246
Так я хочу инвертировать сам, алё.
>>782250
#265 #782250
>>782248
Ты какой-то ебанутый.
>>782254
#266 #782254
>>782250
Это ты ебанутый! Я помню, когда на пыхе кодил, сам переписывал стандартные функции. Это мозги разминает (и очко).
#267 #782255
>>782257
#268 #782257
>>782255
Да тут суть в том, чтобы самому что-то поковырять.
#269 #782258
>>782150
>>781293
Ты блять шутишь? Мб за тебя и сайт написать? А то наверно глазки и пальчики устанут искать и писать.
>>782267
#270 #782267
>>782258
нет
#271 #782290
В процессе написания одной хуйни 4fun наткнулся на вопрос: нужно увеличивать на определенное количество значение из базы каждые N минут. Без участия пользователя конечно, чтобы все это на сервере происходило. Как? Может в базе данных есть какой-нибудь автоинкримент. Или... просто вычислять новое значение при запросе пользователя, да?
>>782309>>782352
#272 #782309
>>782290
Диван нашептывает мне несколько вариантов:
1. Если известно время создания значения, то вычисляем разницу в минутах между текущим временем и временем создания, делим на N, умножаем на значение, суммируем, записываем новое значение.
2. Увеличиваем значение по крону.
3. Читаем документацию к СУБД в поисках Event Scheduler(как в mysql) или чего-то подобного и используем его.
Первый вариант, самый дешевый, как мне кажется. Так что, да, ты все правильно придумал.
#273 #782352
>>782290

>в базе данных есть какой-нибудь автоинкримент


Есть. https://www.postgresql.org/docs/current/static/sql-createsequence.html
#274 #782359
В Тhink Python версия 3.2, а текущая 3.5
Ничего страшного? Или есть отличия?
>>782361>>782366
#275 #782361
>>782359
Не ссы, нагуглишь по ходу дела.
#276 #782366
>>782359
блядь между 2 и 3 разницы хуй да нихуя, если хоть что-то одно знаешь и глаза имеешь, а ты о 3.2 и 3.5 переживаешь
И вообще накати в виртуаленв 3.2 и не морочь голову
#277 #782452
Антон, а нормально в шаблонах, в инпутах в value="" записывать pk? Так же любой может изменить дом-value и отправить хуйню (например другой номер id).
>>782466
#278 #782466
>>782452
<input type="hidden" value="{{id}}" name="id">
То есть вот так получается. Это же никак не заменить? Только устроить еще одну проверку: письмо на емеил, смска на телефон.
#279 #782473
Как начать писать на фласке?

И как начать применять знания на практике?
>>782475
#280 #782475
>>782473
Напиши свой твиттер.
>>782490
#281 #782480
Питоно - Хацкеры, на чем начинать писать ? На pycharm или visual studio ?
>>782491
#282 #782490
>>782475
а что нибудь другое?
>>782543
#283 #782491
>>782480
выбор очевиден - пучарм
>>782495
#284 #782495
>>782491
поясни за выбор
>>782498
#285 #782498
>>782495
Cамый удобный инструмент для разработки на питоне.
>>782501
#286 #782501
>>782498
почему не визуал? Я там вот например когда калькулятор писал, не открывался сам модуль питон.
>>782504
#287 #782504
>>782501
Можешь и висуал использовать если нравится.
>>782510
#288 #782510
>>782504
как там вызвать строку как в вижуале когда нажимаешь кнтрл + ф5
??
>>782518
#289 #782518
>>782510
так же
>>782532
#290 #782532
>>782518
нет, ничего не выходит блеать
>>782536
#291 #782536
>>782532
ну там внизу нажми значит
>>782541
#292 #782541
>>782536
нету
#293 #782543
>>782490
Напиши что-нибудь другое.
>>782546
#294 #782546
>>782543
ты мне ответь

>И как начать применять знания на практике?

>>782550
#295 #782550
>>782546
Ну так пиши веб-сервис. Любую хуйню. Копируй идею любого сервиса и делай сам. Геморроя на недели себе найдешь.
#296 #782559
Лутца в жопу ебал.
>>782563>>782567
#297 #782563
>>782559
Саммерфильд няша.
>>782573
#298 #782565
Как вызвать run в pycharm для другого дока, если ран установлен на другой?
>>782570>>782571
#299 #782567
>>782559
зачем это?
хотя 1к страниц, еще бы
#300 #782570
>>782565
Что?
>>782571
#301 #782571
>>782565
>>782570
в настройках проекта можно изменить
#302 #782573
>>782563
Самый охуенный вариант - это начать с Саммерфилда и потом шлифануть сверху Лутцем. Лутц в таком случае очень легко заходит, т.к. многие темы читаются как треды в Б, но есть некоторые нюансы и всякие хитровыебанные фичи, которые полезны, но которые в Саммерфилде не описываются.
#303 #782574
Укус пистона бист бук евер потом прост хуярешь документацию и вот эту хуету тож можна по фену http://aliev.me/runestone/

и документацию по кд трахаешь
все ебать
ты бест прогер на пистоне ин зе ворлд
#304 #782599
Блять, если вкатываетесь в питон, лучше вкатиться с Доусона и его ПРОГРАММИРУЕМ ИГРАЮЧИ, я вот не жалею, что начал ее читать, хотя умею в программирование. В питоне столько ебучей магии и нюансов, что это можно только прочувствовать и уяснить на ранних порах, а начинать с укуса, доков или лутца - хуевый путь. Лучше начать с Доусона, а потом уже полировать Лутцем непонятные моменты.
>>782607
#305 #782604
А на ютабе есть курсы годные по трешке?
#306 #782607
>>782599
мать твою ебал
>>782608
#307 #782608
>>782607
Ладно, брат прости пожалуйста, я стараюсь не мамоебить, но не так просто взять и прекратить это делать. Шайтан попутал. Прости. Твоя мать хорошая женщина.
145 Кб, 1596x693
#308 #782610
Кстати, там на edX открылся летний курс по сокетам. 6.002

Индус поясняет с пиздецовым акцентом, но делает это ниблоха.
>>782657
#309 #782657
>>782610
Ладно индус, я щас на какогото талиба наткнулся, поясряющего за ассемблер с именем алаха на устах
>>782687
#310 #782687
>>782657
Дай ссылку брат, я бы послушал брата по вере.
>>782707
#311 #782707
>>782743
#312 #782743
>>782707
Он же еле-еле говорит по-английски, лол.
>>782752>>783059
#313 #782752
>>782743
Да? По мне так читсый арабский какойто
#314 #783054
Есть ли какие подводные камни проверять является ли данный путь файлом искомого типа через path[-4:]=='.png'?
>>783055
#315 #783055
>>783054
Да, это может быть директория. Используй pathlib.
>>783069
#316 #783059
>>782743
мне кажется это урду с английскиим терминами
#317 #783065
Ну вроде прочитал материал, кое-что понял, как начать применять знания?
#318 #783067
>>783065
Сразу хочу сказать, что это не троленк.

ПРОСТО) берешь и пишешь теперь.
#319 #783069
>>783055

> Да, это может быть директория.


Но, согласись, человек додумавшийся назвать дирректорию, так чтобы название оканчивалось на '.png' должен страдать.

> pathlib


Чем плох os.path?
>>783348>>783350
#320 #783070
>>783065
Берешь учебник русского языка и читаешь про вводные слова.
>>783311
#321 #783073
>>783065
Никак. Если к моменту окончания прочтения материала ничего писатсья не начало, то, увы, программирование не для тебя.
#322 #783074
Подскажите как на django валидировать данные POST такого типа
POST['item'][0] = 1
POST['item'][1] = 2
POST['item'][3] = 3
POST['item'][4] = 4
POST['item'][5] = 5
etc
#323 #783100
>>783074
это чо такое?

ты в input пишешь name="название" (или в ajax - 'название': твоя переменная). В джанго пишешь переменная = request.POST.get('название'). Если нужно предать массив-объект делаешь их в json формат и передаешь как строчку. И в джанго декадируешь обранто.
>>783124
#324 #783124
>>783100
ок спасибо понял
#325 #783125
>>783074
посмотри в сторону сериализаторов, один раз логику опишешь, потом меньше лапши.
#327 #783271
Ну вроде прочитал материал, кое-что понял, как начать применять знания?
>>783311
#328 #783311
>>783271
Тварь! Ты так и не взял учебник русского языка?!
>>783070
#329 #783313
Есть какие-нибудь интересные проекты на джанге с открытым кодом? Не polls, но и не слишком сложные желательно.
#330 #783348
>>783069
pathlib специально сделан, чтобы все операции с путями были в одном месте и в единообразном стиле. Также поддержка кросс-путей (винда-линукс). Ну, и https://docs.python.org/3/library/pathlib.html?highlight=pathlib.path#pathlib.PurePath.suffix касательно твоего вопроса. Плюс relative_to, touch, open и много-много чего ещё.
#331 #783350
>>783069

> Но, согласись, человек додумавшийся назвать дирректорию, так чтобы название оканчивалось на '.png' должен страдать.


Не соглашусь. Программка, которая упадёт от директории, которая оканчивается на ".png" должна страдать.
#332 #783354
Аноны пытаюсь решить такую задачу, но пока не получается :
дана последовательность чисел (например 112222555555444), нужно написать функцию которая выводит самую длинную подпоследовательность одинаковых чисел в этой последовательности, понятно что это
555555, но как вывести её и индексы начала и конца этой подпоследовательности.
#334 #783376
>>783375
спасибо, а по понятнее можно ?
>>783378
#335 #783378
>>783376
Нет.
#336 #783383
>>783384
#337 #783384
>>783383
ок, спасибо, а можешь обьяснить решение?
>>783404
21 Кб, 400x353
#338 #783400
>>783354

s = "112222555555444"
s.chars.slice_when(&:!=).max_by(&:length).join

=> "555555"
#339 #783404
>>783384
Итерируясь по списку ищешь одинаковые посделовательности чисел сравнивая текущее значения с предыдущим, длинна текущей посдовательности в счетчике tmp_len, если значение меняется сбрасываешь tmp_len в max_len если он tmp_len больше, и запоминаешь индекс конца.
индекс начала = индекс конца - длинна
>>783415
#340 #783415
>>783404
спасибо тебе большое
>>783965
#341 #783433
Анон, попытался тут посчитать рекурсивно степень и нихуя не пойму. Вроде на последней итерации цикла выводится print выводит правильное значение, но return отдает None. Где я ошибаюсь?
https://ideone.com/ZjRIei
#342 #783446
>>783433

>under_row(chislo, stepen, chislo)


Не много ли chisel?
>>783461
#343 #783451
Подскажите, как заставить питон выдавать исключение при попытке file.read(n), когда n байтов в файле нет или когда файл кончился. Мне нужно сделать нечто вроде:
while not file.ENF_OF_FILE():
....x = file.read(nx)
....y = file.read(ny)
....тут много таких строчек
....z = file.read(nz)

Я же заебусь проверять, что каждое чтение прочитало столько, сколько нужно, и что еще не EOF. Как у вас вообще принято рандомные бинарные файлы парсить? Если подскажете статью с best-practices, будет вообще охуенно.
#344 #783457
Сделал прогу с выходом в интернет, откомпилировал её. Собираюсь отдать друзья попользоваться. Хочу, чтобы она мне втихаря стучала мне о каждом запуске. Какое наилучшее решение? Какие мысли есть?
>>783462
#345 #783461
>>783446
А я там пояснил для чего второй раз берем chislo, лол. Второй раз chislo берется, чтобы с ним работать можно было. Она что-то вроде temp - значение, которое можно изменять без проблем.
#346 #783462
>>783457
Убейся нахуй.
>>783473
#347 #783463
>>783433

>final = under_row(chislo, stepen, chislo)


>return final



Лучше сразу написать:

>return under_row(chislo, stepen, chislo)



Так интерпретатор сможет выполнить оптимизацию хвостового вызова.
>>783470
#348 #783470
>>783463

>return under_row(chislo, stepen, chislo)


Спасибо, я не знал про это, я просто после SICP'а начал питон учить.
А чому функция возвращает None?
#349 #783473
>>783462
Короче, есть два решения:
1) Она постит ip в google form и там же получает команды на отключение. Это решение я уже пробовал, оно работает, просто это дополнительные 50 строк кода.
2) Либо она использует встроенный почтовый сервис, тихо отправляет мне письмо, тихо получает ответ. Пока не пробовал.
Какие еще есть мысли?
#350 #783480
>>783433
Если я правильно понял, то у тебя функция возвращает result вниз по стеку, где дальше никак не обрабатывается.
>>783496>>783501
#351 #783485
>>783451

> принято рандомные бинарные файлы парсить?


struct.unpack()
>>783583
#352 #783496
>>783480
В общем, return на 19 строке добавь.
>>783501
#353 #783501
>>783480
>>783496
Заработало, спасибо большое. Анон, а что за магия? Поделись, пожалуйста, где была проблема?
>>783506
#354 #783506
>>783501
Ну я же объяснил, что возвращаешь ты result в предыдущую функцию under_row, а она, в свою очередь, ничего не возвращает. Если return не указан, функция возвращает None, вот его ты и получаешь.
>>783508
#355 #783508
>>783506
Епты, спасибо, анон!
#356 #783570
Анон, знаю что платина, и все же:
Что надо знать/уметь кандидату на джуна можно список маст рид книг, типовых заданий, умений конкретных?
На сколько реально попасть на работу не дотягивая в каких-либо местах из этого спика на испыталки, уменьшенную зп или интерна там какого?
Был ли ты, анон, питоноджуном? Если есть опыт, то поделись, пожалуйста.
Если что, софтскиллы нормальные я бы даже сказал хорошие, не как у забитого двачера.
Упор на проф-навыки в вопросе. Заранее спасибо что не обоссал
#357 #783574
>>783570

>не как у забитого двачера


Урод, сам ты двачер забитый.
>>783585
#358 #783580
>>783570

>не как у забитого двачера


Урод, сам ты двачер забитый.
#359 #783583
>>783485
Я про нее знаю, но это не решает ни проблемы с детектом EOF, ни проблемы чтения таких структур, где каждый последующий элемент зависит от того, что было в предыдущих. Что-нибудь более адекватное есть? inb4 ctypes
>>784056
#360 #783585
>>783574
Я имел ввиду, что двачер может быть простым, а может быть забитым. И забитым я никого из здесь присутсвующих не называл.
#361 #783586
>>783570
схоронил с предыдущих тредов

1) Декораторы: как работают, как сделать без сахарка;
2) Как работает with, как определить в классе;
3) Генераты: как и для чего, отличие от итераторов;
4) Итераторы: как можно пройтись, как стопануть без брейка.
5) Магические методы: какие есть, для чего;
6) GIL: плюсы и минусы;
7) Асинхронность: как и для чего, отличие от многопоточности;
8) И вопрос ответ на который я не знаю, может, анон скажет: сделать, чтобы при вызове функции каждый раз печаталось некое сообщение;
9) Кем вы видите себя через пять лет?
10) Почему ты должны выбрать именно вас?
11) Почему у вас нет вышки?
12) Работали ли вы с <унылый фреймворк/CMS для клепания одинаковых сайтиков нейм>?

По Джанго задавали следующие вопросы:
1) function/class-based views отличие, плюсы/минусы;
2) Как и в каком порядке работает middleware;
3) Какие отношения можно определить в полях моделей;
#362 #783590
>>783586
Спасибо, а без знаний джанги можно даже не соваться никуда?
>>783614
#363 #783594
>>783586

> сделать, чтобы при вызове функции каждый раз печаталось некое сообщение;


Это такой троллинг?
>>783614
#364 #783607
>>783354
https://ideone.com/4b27Wx
Сделал на свой лад, мимосчитающий рекурсии
>>783704
#365 #783609
С какого времени питон научился в русские названия переменных?
>>783615
#366 #783614
>>783590
Если идешь на джангиста то очевидно - да.

>>783594
Кажется там речь шла о любой функции, без доступа к телу.
#367 #783615
>>783609
Это не 1С тред.
>>783625
#368 #783620
>>783586
У меня проблема, я могу писать, могу кодить, но объяснить, что я сделал языком - не могу. Могу в воздухе нарисовать, в тертадке, на доске - но не объяснить, я не могу объяснять такие вещи почему-то. Хуй знает.
>>783689
#370 #783627
>>783625
фокус плохой, сразу видно что ньюфаг
>>783640
#371 #783638
>>783625

>Explay Tornado


На али брал? Сколько стоит?
>>783641
#372 #783640
>>783627
ааа
#373 #783641
>>783638
мамка отдала за 3000 брала
#374 #783644
>>783625
отвечайте пидоры!
1247 Кб, 2560x1920
#375 #783653
>>783660
#376 #783660
>>783653
Никитос, не говори так про двач.
#377 #783666
>>783660
ват
>>783678
#378 #783671
>>783660
котяй-мятяй ты?
>>783678
#379 #783673
>>783660
фууух бля пересрал
>>783678
#380 #783678
>>783666
>>783671
>>783673
Чо! Ссышь, когда страшно?
>>783683
#381 #783683
>>783678
ну какбе да
#382 #783689
>>783620
Я изучил материал по фласку, а вот как начать применять знания на практике?
#383 #783704
>>783607
и тебе большое спасибо)
>>783722
#384 #783722
>>783704
Я не понял того, как сделал другой кун, на самом деле. Поэтому сделал на основе своих старых работ.
#385 #783725
>>783586

>1) Декораторы: как работают, как сделать без сахарка;


Функция, делающая что то до и/или после переданной функции. Без задней мысли.

>2) Как работает with, как определить в классе;


Ну область видимости создают вроде. Без задней мысли, берешь и определяешь.

>3) Генераты: как и для чего, отличие от итераторов;


Это типа дженерики что ли? Ну в джанге типа страницы с переданными значениями из базы. Ну итераторы итерируют, а дженерики с базой работают.

>4) Итераторы: как можно пройтись, как стопануть без брейка.


Можно фором, можно вайлом. Можно вызвать os.system и стопануть все процессы со словом python, тогда итерация прекратится без использования брейка.

>5) Магические методы: какие есть, для чего;


Ну init есть, он в классе нужен. Типа свойства объекта задает.

>6) GIL: плюсы и минусы;


Что? Может JIT? Это типа компиляция такая, я не ебу.

>7) Асинхронность: как и для чего, отличие от многопоточности;


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

>8) И вопрос ответ на который я не знаю, может, анон скажет: сделать, чтобы при вызове функции каждый раз печаталось некое сообщение;


Добавить print в функцию. Или в декоратор обернуть.

>9) Кем вы видите себя через пять лет?


Трупом, выпилившимся два года назад.

>10) Почему ты должны выбрать именно вас?


Остальные ещё хуже. Нет, правда.

>11) Почему у вас нет вышки?


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

>12) Работали ли вы с <унылый фреймворк/CMS для клепания одинаковых сайтиков нейм>?


Да я их сам пишу. Хотите посмотреть на список из моих фреймворков и цмсок? Некоторые я даже юзал пару раз. В основном для создания следующего фреймворка или цмс.

Я вам подхожу?
#385 #783725
>>783586

>1) Декораторы: как работают, как сделать без сахарка;


Функция, делающая что то до и/или после переданной функции. Без задней мысли.

>2) Как работает with, как определить в классе;


Ну область видимости создают вроде. Без задней мысли, берешь и определяешь.

>3) Генераты: как и для чего, отличие от итераторов;


Это типа дженерики что ли? Ну в джанге типа страницы с переданными значениями из базы. Ну итераторы итерируют, а дженерики с базой работают.

>4) Итераторы: как можно пройтись, как стопануть без брейка.


Можно фором, можно вайлом. Можно вызвать os.system и стопануть все процессы со словом python, тогда итерация прекратится без использования брейка.

>5) Магические методы: какие есть, для чего;


Ну init есть, он в классе нужен. Типа свойства объекта задает.

>6) GIL: плюсы и минусы;


Что? Может JIT? Это типа компиляция такая, я не ебу.

>7) Асинхронность: как и для чего, отличие от многопоточности;


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

>8) И вопрос ответ на который я не знаю, может, анон скажет: сделать, чтобы при вызове функции каждый раз печаталось некое сообщение;


Добавить print в функцию. Или в декоратор обернуть.

>9) Кем вы видите себя через пять лет?


Трупом, выпилившимся два года назад.

>10) Почему ты должны выбрать именно вас?


Остальные ещё хуже. Нет, правда.

>11) Почему у вас нет вышки?


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

>12) Работали ли вы с <унылый фреймворк/CMS для клепания одинаковых сайтиков нейм>?


Да я их сам пишу. Хотите посмотреть на список из моих фреймворков и цмсок? Некоторые я даже юзал пару раз. В основном для создания следующего фреймворка или цмс.

Я вам подхожу?
>>783728>>783730
#386 #783728
>>783725
мы вам перезвоним
#387 #783730
>>783725
жиденькие ответы.
>>783735>>784075
#388 #783735
>>783730
В смысле?
>>784417
#389 #783741
Как осуществить задачу: считывается весь текстовый файл, если встретился знак вопроса, то перенести строку
>>783743>>783750
#390 #783743
>>783741
Куда?
>>783747
#391 #783747
>>783743
Перенести в смысле печатать то, что после этого знака с новой строки
>>783748
#392 #783748
>>783747
Как на счет replace('?', '?\n')?
>>783760
#393 #783750
>>783741
for i in text.split('?'): print(i)
#394 #783760
>>783748
Можешь полностью код написать?
>>783781>>783787
14 Кб, 218x222
#395 #783781
>>783760
i can, but no.
>>784077
#397 #783809
>>783787
Спасибо
#398 #783813
>>783375
Спасибо, анончик, не знал о таком.
Можно ли это http://ideone.com/oLknl7 упростить? Может я чего лишнего делаю.
>>783832
#399 #783832
>>783813

>>> s = '11112222222333333333333333444555555555555555111111111777777777'


>>> import itertools


>>> max(itertools.starmap(lambda _, g: str.join("", g), itertools.groupby(s)), key=len)


'333333333333333'
>>783833
#400 #783833
>>783832
Шикарно. Благодарю.
#401 #783917
>>783586

>4) Итераторы: как можно пройтись, как стопануть без брейка.


А без брейка стопануть это на StopIteration эксепшн намекают, который внутри и вызывается в конце обхода коллекции?
>>784079
#402 #783965
>>783415
Это было сложно придумать?
#403 #784056
>>783583
если файл небольшой, делай data=file.read() и парсь как хочешь

>>783451

> Как у вас вообще принято рандомные бинарные файлы парсить



структуру опиши свою, у тебя коллекция (массив) сущностей или одна сложная сущность?
>>784441
#404 #784062
Как начать применять знания? Массивы, строки, функции...
>>784068
#405 #784068
>>784062
Найди /пр рулетку, и не бросай пока не напишешь наролленное.
#406 #784072
>>784068

> и не бросай


Ролльни ее, и не бросай писать.
#407 #784075
>>783730
а ви таки антисемит?
#408 #784077
>>783781
They don't think it be like it is, but it do
>>784374
#409 #784079
#410 #784081
>>784068
Подкинь. А то не найти ее.
#411 #784083
>>784068
То есть решая такие задачки я "набью руку"?
>>784086>>784089
#412 #784086
>>784083
Не только руку набьешь, а получишь реальный опыт. Да, будешь дохуя гуглить, если задачка сложная попадется. Зато такой то прогресс! Скинуть не могу, планшет дома, а я не дома. Если готов погодить и употребить это время на гугление своейпроблемы то погоди
>>784090
377 Кб, 1450x1080
#413 #784089
>>784083
Ну например
>>784097>>784099
#414 #784090
>>784086
Давно на питоне пишешь, с чего начинал? Каких успехов достиг?
>>784091
#415 #784091
>>784090
Никаких успехов не достиг, бросил петон после ознакомления, перешел на си.
>>784113
#416 #784096
Есть ли pathlib для православной двойки?
304 Кб, 1920x1080
#417 #784097
>>784099
#418 #784099
>>784089
>>784097
спасибо анон!
#419 #784113
>>784091
Зачем? Что на сях пишешь?
>>784114
#420 #784114
>>784113
Я в реверсинг с самого начала хотел, потому си, асм, плюсы, вот это все. Сейчас вот пишу для развлечения движок для 2д пошаговой игры, типа икскома. сильно трудно для ньюфага, конечно
#421 #784268
Есть ли какой смысл на третий питон перекатываться? Что-то я про него почитал-почитал и ни каких серьёзных профитов не увидел, какие-то охуительные достижения уровня переименовать xrange в range, вместо того чтобы нормальную многопоточность запилить, да ещё и строки калечным юникодом сделали...
>>784279
#422 #784275
Ты тупой. Оставайся на втором, тебе там самое место.
#423 #784279
>>784268
Нет, троечка - говно для хипсторов, перекатывайся лучше на хаскель.
#424 #784292
Господа, есть один тест(шучу, 4), написано всё на python 3.4+selenium2+unittest, так вот, на проверку этого всего, тратится порядка 20-30 минут, это нормально?!
Возможно сделал немного по-извращенскому, в функции-тесте идёт поиск значения элемента, затем вызов обычной функции в которой идёт поиск таких же элементов но уже на странице и после этого возвращается лишь результат для проверки на assertTrue(значение переменной, значение элемента взятое со страницы).
На какие моменты стоит обратить внимание? Переделать всё иначе?
>>784293>>784325
#425 #784293
>>784292
Ах, да, использую pycharm
>>784297>>784325
5 Кб, 325x118
#426 #784297
>>784325
#427 #784325
>>784292
>>784293
>>784297
Ты что-то делаешь не так.
>>784344>>784390
#428 #784344
>>784325
Может есть какие варианты/типичные причины такого поведения?
>>784350
#429 #784347
>>782054
for key, value in sorted(dict.items(), key=lambda x: x[1]):
....do some stuff
#430 #784350
>>784344
ПРО-ФАЙ-ЛЕР
>>784360
#431 #784360
>>784350
P R O F I L Ё R
#432 #784374
>>784077
Nihuya ne ponel. No spasibo.
#433 #784390
>>784325
А вообще, это хорошая идея, вызывать функцию из теста? Или есть варианты получше?
#434 #784408
Какую прогу для гитхаба замутить7
>>784419>>784422
#435 #784417
>>783735
В прямом, про генераторы вообще пушка.
#436 #784419
>>784408
Я в гитхаб решения задачек разных скидываю уровня "развернуть ассоциативный массив".
#437 #784422
>>784408
Кстати было бы круто туда шахматного бота залить. Как его написать?
>>784428
65 Кб, 509x679
#438 #784428
>>784422
Было бы круто в гитхаб искусственный интеллект с IQ 180 и собственным Я туда залить. Как его написать?
>>786002
#439 #784441
>>784056

> data=file.read() и парсь как хочешь


Печально. У меня сложная сущность без четко выраженного формата. Например в >>783451 набор u8 prefix1, prefix2, n, u8 keyword[n], и дальше, в зависимости от кейворда и префиксов, еще что-то, а после этого снова кейворд с префиксом, иногда с несколькими. И хотелось бы при невозможности чтения чего-либо из этого великолепия дропнуть обработку целиком. Алсо, как вы вообще живете без do .. while и нормального for (i = ...; ...; i += n), где внутри цикла можно манипулировать i?

Алсо, существует ли в двойке аналог int.from_bytes кроме самодельного или struct?
#440 #784447
Ребят, вот я впринцепе могу написать на фляге говно-сайт, могу сделать парсер (даже с очередями если подзаебаться).
Как мне получать с этого шекели? На какие биржи идти? Или стоит квалифицироваться в анализатора?
Или писать свои говносайты? Какие хостинги ты посоветуешь? конечно не бесплатные, покушал уже, спасибо
>>784465
#441 #784448
>>784441

>do .. while


Если я работаю со строкам, то делаю что-то вроде
string = "penis"
while string!=""
и пошел. На первой же итерации while = true

for ровно такой же, если вникнуть в смысл range

for i in range(0, 10, 1)
>>784450
#442 #784450
>>784441
>>784448
И внутри цикла можно манипулировать i, если что. Внутри цикла можно манипулировать вообще чем хочешь, цикл даже строки из файла может брать, как i
>>784475
#443 #784465
>>784447
В офисе года два поработай для начала.
#444 #784475
>>784450

> string = "penis"


Делаю так же. Правда, без пенисов. Но ведь некрасиво жи.

> внутри цикла можно манипулировать i


Ты не понял. В си-подобных языках можно так:
array[n] = { ... };
for (i = 0; i < n; i++)
item = array;
do_something(item);
if (do_it_again(item)) {
i--; // На следующей итерации мы снова обработаем этот же элемент.
}
В питоне можно сделать генератор и внутри for сделать send, но что, если я хочу вернуться назад на 2, 3, ..., n элементов, а не на один?
>>784483>>784484
#445 #784483
>>784475
мимиопрохожу
делай так?
for i in range(len(ar)):
item = ar
if SUKA_BACK_TO_THE_FUCKING_PAST:
item = ar[i-2]
do_my_good_shit(item)
#446 #784484
>>784475
Чет я нихуя не понял. Можешь скинуть пример кода какой-нибудь простенький на Си-подобном языке?
>>784497
#447 #784497
>>784484
Да похуй. Я уже осознал, что я хочу странного. http://ideone.com/DoZm0I
>>784499
#448 #784499
>>784497
Ну ты шизик.
#449 #784508
Братишка, опиши свою стори как ты начал программировать на питоне и применять знания на практике? В вебе делаешь что-то?
>>784513>>784551
#450 #784513
>>784508
Этот поехавший каждый день пишет "прочитал то-то, как применять знания". Бля, да задачки решай любые, хоть школьные, бери и переписывай функции, например: reverse строк, списков, кортежей, словарей, высчитывай длины последовательностей в строке. Чем угодно займись, блять. Прежде чем за проект браться, хоть эту поебень осиль.
>>784514>>784530
#451 #784514
>>784513
сам ты уехавший
#452 #784530
>>784513
не напомнишь линк на такие задачки?
>>784542
#453 #784542
>>784530
Да я сам как-то берусь и делаю. Или тут кто-нибудь скидывает задачу, а я решаю.
#454 #784551
>>784508
Когда защитил диплом понял что надо бы наконец работку найти, но я нихуя не умею, вспомнил про пистончик(когда-то расширение для exaile на нем писал, язык оче доставил, после мерзкой жабы особенно), окзалось что он ещё в веб умеет, посмотрел несколько дней уроки по джанге на ютюбчике, написал бложик, поразбрасывал резюмешки и через недельку пошел работать за еду на удаленку в васяностартапчик.
Делюсь опытом #2 #455 #784819
Собрал скрипт на вин10. Откомилировал в exe, работает прекрасно. Попросили сделать под мак. Перезагрузился под Эль Капитан. У меня mac-mini, на нем две системы, родная Эль Капитан и на другом разделе харда вин10. Откомпилировал при помощи pyinstaller --windowed myscript.py Получил app, запускаю, ничего не происходит. Выяснилось, что у pyinstaller какой-то баг в открытии файлов в формате --windowed. Бился два дня. Решил все-таки сделать pyinstaller --onefile myscript.py Проблема, что создается приложение, которое нужно запускать в терминале с прописанием пути к приложению. Тупой юзерзверь на такое не способен. Решил запускать при помощи applescript. Это что-то вроде батника для винды. Выяснилась новая проблема, когда скрипт запускается, он определяет путь не из папки запуска, а прямо my root/user. Прописать полный путь нельзя, потому имя юзера у каждого отличается. Решение, запомнить путь директории запуска и уже потом открывать. Итого. Открываем AppleScript вписываем туда http://ideone.com/Hh11fo сохраняем как при Application (внизу выбрать). Все теперь юзерзверю надо дважды кликнуть на этом.
#456 #784846
>>784441
Ты бы хоть документацию почитал. https://docs.python.org/3/library/io.html?highlight=read#io.RawIOBase.read
Обычный питоний стрим
while True:
....data = f.read(8192)
....if not data:
........break
....# do shit
Для сложных бинарных данных да и для простых, ёпту использую construct. Там есть всё кроме реверса битов у битовых полей.
>>784858
#457 #784858
>>784846
Ты бы хоть сообщения прочитал. if not data - это все хорошо, пока у тебя не полсотни read в классе.

> construct


Охуенно, спасибо.
>>784869
#458 #784869
>>784858

>Ты бы хоть сообщения прочитал.


Ты дурак? read один. Потом данные парсишь. Откуда у тебя больше одного и зачем?
#459 #784875
Есть какой-нибудь краткий гайд по архитектуре питон-приложений? Я имею в виду чистый питон безо всяких фреймворков. Какие там правила хорошего тона? Каждый класс в отдельный файл выносить?
>>784876>>784927
#461 #784883
>>784876
Я прочёл пеп в первую очередь. Там про архитектуру ничего - просто рекомендации по стилю.
>>784910
#462 #784910
>>784883
Какая может быть архитектура у Пистон-приложений?
Либо это мелкая наколенная glue-залепень, тогда архитектура ей нахер не нужна.
Либо это Жанга, там вся архитектура уже гвоздями прибита, не оторвешь.
>>784913
#463 #784913
>>784910
Ну хочется чтобы чисто-аккуратно было даже если приложение наколенное и состоит из нескольких модулей и пары десятков классов.
>>784919
#464 #784919
>>784913

>нескольких модулей и пары десятков классов


Если тебе нужно пара десятков классов, лучше взять язык программирования, пригодный не только для обучения, непрограммистов, джанги и наколенных утилит из 20 строчек.
#465 #784927
>>784875
Архитектура приложения зависит не от языка, а от задачи которую оно выполняет.
43 Кб, 604x575
38 Кб, 663x489
#466 #785031
Господа, просто тренируюсь в сериализации и не могу понять, как мне приручить pickle.
Shelve я приручил, а вот pickle -не могу.
Я хочу загрузить пару объектов в файл .dat и извлечь их, но не последовательно (вдруг я не знаю, сколько там объектов загружено, вдруг их миллион?), а через for. Но при работе с for выдается ошибка. В чем моя проблема? Где я дебил?
#467 #785040
>>785031
Они как бы извлекаются, но крайне уебански и ошибка мозолит глаза.
>>785043
#468 #785043
>>785031
>>785040
Ты читаешь файл в бесконечном цикле. Как считаешь, бывают ли бесконечные файлы?
>>785048
#469 #785045
>>785031

>Но при работе с for выдается ошибка


Но у тебя нет ни одного for
>>785048
69 Кб, 251x251
#470 #785048
>>785043
Я нихуя не пойму, можешь подкинуть идею, как выбрать все объекты из файла?
>>785045
Да я уже двое суток не сплю из-за ебаной сериализации, даже не заметил, что у меня там while
>>785052
#471 #785052
>>785048

>но не последовательно (...), а через for.


Или я кретин, или ты написал неправильно.
Либо выводи всё, делая как тут ( http://pythonworld.ru/moduli/modul-pickle.html ).
Либо , если хочешь рекорд, то пробегайся по всем данным и ищи максимальный(твой кэп).
>>785053
#472 #785053
>>785052
Короче, я так понял pickle не подходит для записи нескольких объектов, их удаление или модификацию. Он подходит для записи одной структуры на длительное время. Shelve работал как словарь и я хотел, чтобы pickle также работал. Но видать не судьба.
В любом случае, спасибо за внимание к проблеме, анончик, пойду я опочевать, а то заебался уже.
>>785058>>785059
#473 #785058
>>785053
Ну видимо да, лучше юзать старый добрый open(), для хранения таких данных, ну или в отдельный фал records.ру вынести словарь с {имя:рекорд}.
119 Кб, 1241x673
#474 #785059
>>785053
Вот мой мозг под конец сгенерировал читерский вариант.
#475 #785077
>>785059
Не эстетично же)
Да и не отсортируешь особо, только если поебаться со срезами.
#476 #785079
>>785059
Тебя явно нужно поспать.
#477 #785090
Ананасы, объясните как работает алгоритм STRIPS?
Чет почитал, но не понятно, можете на пальцах объяснить?
>>785167
#478 #785167
>>785090
какая-то узкоспециализиорванная хуйня
>>785179
#479 #785179
>>785167
Нужно ее реализовать, а я хз как
>>785192
#480 #785192
>>785193
#481 #785193
>>785192
блять не та ссылка
>>785194
#482 #785194
>>785193
Или та... Сами разбирайтесь корчое, мне похуй.
#483 #785389
>>785059
Ты в курсе, что в текстовом файле можно искать значения без цикла? Просто пишешь if "Jopa" in file:
>>785426
#484 #785426
>>785389
Я про текстовый знаю, но мне нужен был файл ЗАКОНСЕРВИРОВАННЫЙ.
#485 #785451
Анон, а как ты начал учить Питон? По видео? Книгам? Или по сайтам?
>>785474
#486 #785474
>>785451
Книга Доусона.
>>785479
#487 #785479
>>785474
и че нормальная как для чайника?
>>785492
#488 #785492
>>785479
лучше укус/синк питон, без воды
>>785495>>785498
#489 #785495
>>785492
поясни не опытному чайнику, что это вообще значит?
>>785498>>785500
#490 #785498
>>785492
>>785495
Если есть опыт и понимание того, как все работает - укус/синк. Если нет - бери Доусона, там 400 страниц всего. А вообще питон неудачный вариант для новичка. Язык сложный, возможностей мало, работы тоже мало, а на каждую вакансию десяток джунов. Сейчас каждый школьник учит питон, а потом не знает что делать с ним. Лучше попробуй Haskell. На нём и конкуренция пониже, и зарплаты больше, и сам язык понятней. Если никогда не занимался программированием, то начинать лучше всего с Haskell - после него другие языки учатся быстрее. Работы полно, платят отлично. По книгам. Если есть хоть немного знаний программирования, читай это: http://www.ozon.ru/context/detail/id/30425643/ Если совсем новичок, пойдет эта книга: http://www.ozon.ru/context/detail/id/28346038/ Ну и куча онлайн-учебников. Вот, например: https://anton-k.github.io/ru-haskell-book/book/home.h.. Хороший учебник, всё расписано подробно. Сам по нему учился. Рекомендую.
#491 #785500
>>785583
#492 #785501
>>785498
Это паста, если что.
1328 Кб, 500x497
#493 #785504
>>785498

>


спасибо тебе анон! ;)
#494 #785506
>>785498
тоесть питоны джавы и с ++ лучше на потом отложить?
>>785549
#495 #785549
>>785506
Да пиздит он, питон самое то для входа в программирование
>>785709
#496 #785556
>>783787
Нахуй ты переходишь вначало файла? И по чтоб не оставить не перезаписанные места?почему бы тогда не сделать цикл внутри with и там не реплейсить? Мне кажется так пизже, вместо того, чтобы после каждого реплейса файл писать?
>>787454
#497 #785582
Может найдете для себя чего:
https://www.dropbox.com/sh/tbtps8r0i5hsfua/AACWPocw-YdYCGcLB9fGciYKa?dl=0
#498 #785583
>>785500
зачем вы этим даунам вообще отвечаете? Всё же в шапке есть? Не помогайте им. Нормальный анон и так всё найдёт, а отбросы не способные к элементарной культуре пусть отсасывают.
#499 #785614
>>785582
Оп, спасибо антош, накачал себе всякого интересного, буду читать и пробовать.
#500 #785642
>>785582
Бля, схоронил все к себе. Теперь разбираться нужно будет!
#501 #785648
Накидайте пожалуйста примеров хорошего библиотечного кода на питоне.
#502 #785658
Анон, как сделать чтобы для каждой категории была отдельная таблица в БД? Хочу в каждой категории отдельную нумерацию постов.
>>785714
#503 #785694
Что надо усвоить в питоне из основ, чтобы начать уверенно изучать джангу?
>>785749>>785753
#504 #785709
>>785549
бля а если 2 язка сразу учить? Будет хоть какой-то профит? И вообще зная хештиемель и ксс, за сколько лет я смогу нормально писать на питоне? Если удиляю ему около 3-4 часов в день
>>785713
#505 #785713
>>785709
Если ты реально будешь по 3-4 часа в день уделять, то за месяц можешь подготовиться к трудоустройству.
>>785715
#506 #785714
>>785658
Может стоит создать одну таблицу, общую, а потом парочку дочерих к ней, для каждой категории и соответственно выводить там свою нумерацию, м?
>>785767>>785770
#507 #785715
>>785713
Но я смотрю видео и пробую сам писать. Анон как ьы начинал? С какой книги?
>>785717
#508 #785717
>>785715
easyelectronics.ru
А питон учу, находя решения своих задач на stackoverflow.
>>785729
#509 #785729
>>785717
и че дучше чем литая вода или книги?
>>785733
#510 #785732
>>785582
лол цп там нашел))))
#511 #785733
>>785729
Книги не осиливаю, скучно пиздец. А по статьям на практике все замечательно изучается.
>>785739
#512 #785739
>>785733
Ты вроде не ту ссылку скинул, там какой-то кружок радио-любителей
>>785744
#513 #785744
>>785739
Ну так я и не говорил, что я там питон учил. Я там микроконтроллеры учил, ассемблер, сишку. А питоном сейчас всякие малины программирую.
>>785756
#514 #785749
>>785694
бамп вопросу
#515 #785753
>>785694
Все же. змеюо знать всю нужн
#516 #785756
>>785744
а вот для начала питон чить ? Или попытатся с++? С С++ больше возможностей...
>>785758>>785783
#517 #785758
>>785756
Без разницы. Научись программировать на чем угодно хотя бы.
>>785776
#518 #785767
>>785714

Не вкуриваю как связать создание категории с созданием новых инстансов.
>>785770
#519 #785770
>>785714

Ведь тогда на каждую категорию придется создать по модели. Как оперативно добавлять/удалять категории.

Еще есть варианты?

>>785767 кун
#520 #785776
>>785758
Я знаю HTML, CSS.
>>785781
#521 #785781
>>785776

Это языки разметки, а не программирования.
#522 #785783
>>785756
Ну для начала лучше языки низкого уровня учить, как по мне, что бы понимать что и как там происходит, так что с++, а потому уже можно python\js и т.д., чего душа пожелает.
>>785784
#523 #785784
>>785783

Тогда надо с ассемблера начинать.
#524 #785800
Сейчас сидел и пытался разобраться в декораторах. Сестра подошла с какой-то бабой и из-за плеча сказала: "аноннейм, повесишь этой бабе роллставни?", я сказал "занят, не до этого.", а шлюха-сестра ответила "ничего, найдешь время, повесишь, сидишь играешь только". Я охуел, повернулся и сказал "командовать можешь только своей вонючей жопой, выметайся отсюда", она охуела, а та баба аж побагровела. Что это было, блять?
>>786752
#525 #785801
>>785784
Блять, начинайте с рубильников и ламповых компьютеров.
#526 #785816
>>785784
с бинарного кода
>>786000
108 Кб, 640x299
#528 #785997
>>783625
горизонт завален
#529 #786000
>>785816

>


с товей мамаши
#530 #786002
>>784428
Это нейросети. На гитхабе они есть.
#531 #786747
>>785784
Ну можно и с таких основ, но не обязательно.
#532 #786752
>>785800
Разобрался в декораторах?
#533 #787454
>>785556

>И по чтоб не оставить не перезаписанные места?


>Нахуй ты переходишь вначало файла?


Чтобы его целиком перезаписать, ведь он не заменил один символ на другой, а добавил перенос строки, потому твсё всё сдвинуться должно, нет "не перезаписанных мест".

>почему бы тогда не сделать цикл внутри with и там не реплейсить?


Зачем, если можно всё разом?

>вместо того, чтобы после каждого реплейса файл писать?


У него только один раз пишется в файл.
#534 #789986
roll на challenge
#535 #792877
Я нахуй тупой. Но, вот, понадобилось мне скомпилировать в exe-шник.
http://pythonworld.ru/osnovy/program-compilation-with-cx-freeze.html
Нашёл вот это. По ссылке на оф. сайт версия только для 3.4, а у меня 3.5
По второй ссылке, вроде, 3.5, но в whl. И чего мне, ебанашке под виндой, делать?
#536 #793979
>>792877
Ставь 3,4 ибо не всё под 3,5 есть ещё.
Сам так делал.
#537 #796930
>>792877
whl ставятся ведь просто?
что-то в вроде:
pip install <колесо_нейм.whl>
#538 #797131
>>792877
напомните как победить ошибку отсутствия файла
requests.exceptions.SSLError: [Errno 2] No such file or directory
Пытаюсь спаять exe-шник для скрипта на tkinter и vk_api (от него и зависимость к реквестам)
Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 18 июля 2016 года.

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

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