Сохранен 561
https://2ch.hk/pr/res/1332788.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Python 3.7.2 /python/

 Аноним 22/01/19 Втр 20:32:58 #1 №1332788 
py2.jpg
146892549orig.jpeg
Не изучай синтаксис, изучай псевдокод и программирование!


Коммуна: https://sites.google.com/view/pypry/
Основные книги: https://yadi.sk/d/HQhhsBsq3TVRUq

F.A.Q: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat
Интерактив шел: https://repl.it/languages/python3
Книги которые ты никогда не прочтёшь: https://yadi.sk/d/tArKKuQu3Kejuq
Еще больше книг от уважаемого олда питон-треда:https://yadi.sk/d/H-00n-UG3RSQem всегда доступно по шортлинку йей.рф/книги

#python #питон #пайтон

прошлый тред: >>1321508 (OP) (OP)
Аноним 27/01/19 Вск 14:00:54 #2 №1335838 
Аноны, нужна помощь:

https://pastebin.com/2EPC0RYk

Это малюсенький кусок кода, который сам по себе работает и с ним все в порядке, но я пытаюсь добавить к нему маленькое дополнение, а именно: если внутри словаря у кого-то в списке значений только одно значение (как у Сары), выдать сообщение не "favorite languages are:" и дальше в столбик, а " favorite language is" и одно слово. Короче хочу чтоб в случае с Сарой было "Sarah's favorite languages is C." Как этого добиться?
sage[mailto:sage] Аноним 27/01/19 Вск 14:05:35 #3 №1335842 
Идиоты, вы нахуя треды плодите? Если нет на нулевой, то все, паника и создание нового?
Аноним 30/01/19 Срд 01:30:51 #4 №1337680 
>>1335838
print(f"\n{name.title()}'s favorite languages are:" if len(languages) > 1 else f"\n{name.title()}'s favorite language is:")

Эту строчку вместо девятой.

>>1332788 (OP)
>Не изучай синтаксис, изучай псевдокод и программирование!
Тупой совет.
Аноним 30/01/19 Срд 09:46:57 #5 №1337747 
>>1335838
for name, languages in favorite_languages.items():
- - if len(languages) == 1:
- - - - favorite_langs_str = languages[0]
- - - - verb = 'is'
- - elif len(languages) > 1:
- - - - favorite_langs_str = ', '.join(languages)
- - - - verb = 'are'
- -
- - print(f'\n{name.title()}'s favorite language {verb}: {favorite_langs_str}')
Аноним 30/01/19 Срд 11:57:27 #6 №1337799 
Написал сапёра на пайтоне, теперь я йоба-кодер?
Аноним 30/01/19 Срд 12:26:41 #7 №1337807 
>>1337799
Долбойоба-кодер?
Аноним 31/01/19 Чтв 09:04:51 #8 №1338447 
Люди, подскажите, а можно ли в VS Code настроите возможность переключения разных интерпретаторов на лету?
Аноним 03/02/19 Вск 22:34:15 #9 №1341153 
Бандиты, подскажите на счет докера.
Имею django-сайтец с бд пока что sqlite, но в планах перекатиться на postgresql. Фигачу его в docker compose build, оно устанавливает чет, все ок, это понятно.

Хочу растиражировать его в трех экземплярах (по одному на 3 разных региона), те отличия в плане ПО будут несущественны, отличаться будет в основном инфа в БД, и разместить все это безобразие на одном vps-серваке Digital Ocean'а.
Теперь вопрос: куда тут наворачивать nginx + gunicorn || uwsgi? В каждый докер-контейнер пихать? А не шибко ли жирно? Поверху и как-то маршрутизировать? Но как?

Вопрос судя по всему тупой до предела, но я видать еще тупее. Как хоть загуглить подскажите.
Аноним 03/02/19 Вск 22:44:22 #10 №1341165 
Перепитонился
Аноним 04/02/19 Пнд 10:49:20 #11 №1341445 
>>1341153
Бампецкий вопросу
Аноним 04/02/19 Пнд 11:26:42 #12 №1341486 
Ни у кого случайно не завалялся скрипт для инстаграма, позволяющий устанавливать таймер на публикацию?
Буду премного благодарен, если как таковой имеется
Аноним 05/02/19 Втр 20:29:17 #13 №1342469 
Аноны, возможна ли нейронная сеть на питоне? Какие области питонирования надо изучать, чтобы познать сие чудо?
Аноним 05/02/19 Втр 20:46:12 #14 №1342476 
>>1342469

Оч странный вопрос с учётом хайпа. В гугле забанен?
Аноним 05/02/19 Втр 20:50:25 #15 №1342479 
>>1342476
Гугл меня кучу раз наебывал, таки хочется узнать у кого-то, кто этим занимается всерьез, а не копипастит статейки
Аноним 05/02/19 Втр 21:08:33 #16 №1342483 
>>1342469
>Какие области питонирования, надо изучать, чтобы познать сие чудо?
Либы типа keras, pytorch, для начала будет достаточно. Можешь загуглить курс Practical Deep Learning for Coders от fast.ai. Там и необходимую теорию дадут. Вообще в нейронках самого программирования не очень много, если ты конечно не реализуешь модель с нуля на tensorflow. В основном много времени уходит на сбор данных и их предобработку, а поставить на обучение нейронку с помощью либ - дело 5 минут
Аноним 05/02/19 Втр 21:08:42 #17 №1342484 
>>1342469
Нет, она невозможна. Питон интерпретируемый язык, а нейронные сети должны компилироваться с указанием оптимизатора, лосс-функции и метрики. Следовательно нужны компилируемые языки - интерпретируемые не могут компилироваться.
Аноним 05/02/19 Втр 21:16:05 #18 №1342486 
>>1342483
>>1342484
кому верить лол
sage[mailto:sage] Аноним 05/02/19 Втр 22:29:45 #19 №1342522 
>>1342486
Мне. Видишь? Компилируется.

# For a multi-class classification problem
model.compile(optimizer='rmsprop',
loss='categorical_crossentropy',
metrics=['accuracy'])

# For a binary classification problem
model.compile(optimizer='rmsprop',
loss='binary_crossentropy',
metrics=['accuracy'])

# For a mean squared error regression problem
model.compile(optimizer='rmsprop',
loss='mse')
Аноним 05/02/19 Втр 23:55:03 #20 №1342562 
>>1342522
Точно компилируется? Там много раз проблем написано
Аноним 06/02/19 Срд 01:31:18 #21 №1342580 
>>1342562
> compile
Точно компилируется.
> Там много раз проблем написано
Так ведь закомментировано.
изучение Python Almi 06/02/19 Срд 02:57:05 #22 №1342607 
Ребят, кто хочет изучать python вместе? Я сам пишу на нем не долго где-то месяца 3-4, дошел до ООП.
Аноним 06/02/19 Срд 08:16:34 #23 №1342654 
pirog-s-vishnej-17.jpg
САП, ньюфажик снова ИТТ.

Пара вопросов по ООП с учетом реалий питончика:

1.
Допустим, у меня есть класс автомобили, у которого есть переменная скорость и метод движение. Есть два дочерних класса, допустим Феррари и Веста. У первого из них переменная скорость увеличена, у второго уменьшена относительно той, что была в родительском классе.
Я хочу устроить их гонку, для чего создаю объекты этих классов, и в цикле, вызываю их метод двигаться, пока один из них не доедет до какой-то конечной точки (очень условно). Вопрос:

Взаимодействие объектов внутри программы происходит процедурно? Я просто задаю набор действий, которые следует сделать с объектами и эти действия выполняются? Это правильный подход? Где вообще можно почитать-посмотреть, как правильно использовать ООП, как должны взаимодействовать объекты (в книжках-курсах больше внимания уделяется синтаксису, а мне бы образ мышления, что-ли)?

2. У меня есть класс Телевизор. У этого класса есть две переменные (громкость и канал) и три метода: переключить канал, увеличить громкость и уменьшить громкость). Правильно ли я понимаю, что суть инкапсуляции заключается в том, что пользователь должен обращаться к объекту класса телевизор только используя методы, которые ему предназначены (все три в моем примере)?
Если пользователь попытается не увеличить громкость с помощью метода, а изменить значение переменной "Громкость" - это нарушение принципа инкапсуляции, потому, что пользователь не должен менять что-то внутри моего объекта сам, по своему усмотрению, грубо говоря, в обход тех инструментов, того интерфейса, который я ему предложил?
А я, соответственно, должен защитить свой класс от всякого вмешательства, за исключением того, что прямо предусмотрено мной?

Еще один вопрос, уже не связанный с ООП:

Я хочу замутить проект на Tkinter - небольшую декстопную прогу, которая облегчит составление говнодокументов.
Но не могу придумать дизайн, где какую кнопочку поставить, в каком виде сделать. Нет ли у дорогого Анона в запасе каких-нибудь годных туторилов по теме основ дизайна приложений (кажется это называется UI/UX но я не уверен)?

>>1342607

Сап, анончик, а что ты имеешь ввиду под совместным изучением? Я вот думал предложить анонасам сделать на Pygame модель солнечной системы с движущимися планетами, а в перспективе, и с возможностью расчета гравитационных маневров для полета от одной планеты к другой (правда это все заморочно, понятное дело). Но это скорее совместным проект, что бы скучно не было в одного ночами писать (ну и научиться с Гит работать не в одну каску, да и в резюме написать строчку об опыте совместного проекта, ога).

Пирог и спасибо Анонам, которые ответили мне в прошлом треде
Аноним 06/02/19 Срд 09:57:47 #24 №1342729 
>>1342654
>Где вообще можно почитать-посмотреть, как правильно использовать ООП
В книге Elegant Objects же.
Аноним 06/02/19 Срд 10:17:02 #25 №1342734 
>>1342729

Слушал доклад этого поца, но не думал, что книжка супер гуд. Спасибо.
Аноним 06/02/19 Срд 11:21:46 #26 №1342745 
>>1337680
>Эту строчку вместо девятой.
Тупой совет.
format будет гораздо нагляднее.
Аноним 06/02/19 Срд 16:21:42 #27 №1342874 
Я тут первый раз попал на проект с хайлоадом, микросервисы, асинхронность, кафка, вся хуйня.
Узнал, что проект пока еще ни разу не сталкивался с боттлоком из-за использования пистона.
А вы сталкивались c ним? Есть ли смысл учить какой-нибудь го для перфоманса?
мимо вкатился год назад
Аноним 06/02/19 Срд 17:14:02 #28 №1342901 
>>1342874
Эрланг юзаете?
Аноним 06/02/19 Срд 17:23:42 #29 №1342907 
>>1342901
Только реббит на нем есть, а так нет тимлиду очень хочется, но он понимает, что бус фактор тогда начнет стремиться к отрицательным значениям
Аноним 06/02/19 Срд 17:29:43 #30 №1342911 
>>1335838
https://ideone.com/LWLGZ8
Аноним 06/02/19 Срд 18:59:00 #31 №1342961 
Что учить в связке с питоном? для веба оф корс
Аноним 07/02/19 Чтв 04:44:33 #32 №1343167 
>>1342961
SQL
Аноним 07/02/19 Чтв 04:50:02 #33 №1343168 
>>1341153
мне кажется странным стремление растирожировать его на каждый регион. нужно все в один докер пихать.
Аноним 07/02/19 Чтв 05:01:28 #34 №1343170 
>>1342729
Следует оговориться, что это нетрадиционный взгляд на ООП. Может, интересный своей оригинальностью, но новичку лучше рекомендовать что-то каноничное.
Аноним 07/02/19 Чтв 11:09:34 #35 №1343234 
>>1343168
И заставлять крутиться на одном vps шесть докеров с шестью nginx'ами/postgre/rabbitmq/celery и тд ради 6 сайтов? Как-то не экономненько получается
Аноним 07/02/19 Чтв 11:13:37 #36 №1343242 
>>1343170
Спросили про правильность, а не каноничность. У Егора наиболее правильный подход к ООП, хоть, он и перегибает местами палку.
Аноним 07/02/19 Чтв 11:46:52 #37 №1343257 
>>1343242

Два чаю. Вообще если бы программистам было не лень допиливать компиляторы/рантаймы вместо затыкания проблем с производительностью процедурщиной/нативщиной/вендорлокщиной/мультиланг разработкой и прочим байтоебством, а потом вокруг этих припарок создавать свои кривые и уродские фреймворки - то мир бы стал гораздо лучше. Или того хуже - возвращаться в каменный век, к байтоебщине, делая в 21 веке языки вроде Rust и Go.
Аноним 07/02/19 Чтв 14:09:19 #38 №1343365 
Кто нибудь юзал stackless python?
https://github.com/stackless-dev/stackless/wiki
Новые версии выкатываются очень активно, тредами можно нормально пользоваться, чому его не юзают везде?
Аноним 07/02/19 Чтв 15:05:23 #39 №1343401 
>>1343365
Подскажи нубу зачем он нужен? Асинхронщину делать?
Аноним 07/02/19 Чтв 15:08:03 #40 №1343405 
>>1343257
Раст - отличный функциональный язык. Сравнивают его с го только долбоебы, которые о любой технологии судят исключительно по заголовочкам желтушных статей маркетолухов.

>>1342654
>Допустим, у меня есть класс автомобили, у которого есть переменная скорость и метод движение. Есть два дочерних класса, допустим Феррари и Веста. У первого из них переменная скорость увеличена, у второго уменьшена относительно той, что была в родительском классе.
Ебаный ты ублюдок, тебе не нужно городить лапшу из наследования для того, чтобы изменить значение переменной. Если ты не можешь даже придумать неублюдочный пример для своего вопроса, то это явный признак того, что тебе для начала следует заняться, блядь, делом и начать хуячить полезный, сука, код, а не дрочить на мудацкие примеры из книжек для тупорылых даунов.
Аноним 07/02/19 Чтв 15:10:28 #41 №1343406 
>>1343365
>чому его не юзают везде?
https://github.com/stackless-dev/stackless/wiki/FAQ#there-are-some-exceptions-however
Аноним 07/02/19 Чтв 15:31:18 #42 №1343416 
>>1343406
>This is especially the case with Stackless Versions released before commit 949c518c67c75a1. Since Stackless 2.7.7 most compatibility problems are gone
Аноним 07/02/19 Чтв 15:32:38 #43 №1343417 
>>1343401
Реализация нормальных тредов
Аноним 07/02/19 Чтв 15:33:22 #44 №1343418 
>>1343416
И нахуя ты это копируешь, дебил? По-твоему все остальные итт такие же дебилы как ты и читать не умеют? Ты спросил, почему его не юзают везде - тебе ответили. Хули тебе еще непонятно?
sage[mailto:sage] Аноним 07/02/19 Чтв 15:48:51 #45 №1343426 
>>1343417
Там как раз не нормальные треды, а гринтреды, але.
Аноним 09/02/19 Суб 13:04:38 #46 №1344452 
Что лучше юзать для разработки под андроид, kivy или еще что-то?
Аноним 09/02/19 Суб 18:46:15 #47 №1344682 
overview.png
Анон, подскажи чем лучше всего классифицировать изображения в 1 столбце. (типов изображений навскидку штук 50-200)
Аноним 09/02/19 Суб 19:41:53 #48 №1344721 
>>1344682
Бота для евы пишешь?
Аноним 09/02/19 Суб 20:31:44 #49 №1344737 
>>1344682
гугли: Convolutional neural network
но вообще тебе в ML
Аноним 09/02/19 Суб 20:39:06 #50 №1344745 
ScreenShot2018-08-16at12.54.58PMgrande.png
Пистонач, как переписать эту херню?
while number > 1:
--if number % 2 == 0:
----n += 1
--else:
----number = 3 * number + 1
----m += 1

While слишком долгий и прожорливый.
Аноним 09/02/19 Суб 20:45:29 #51 №1344752 
>>1344745
>--if number % 2 == 0:
>----n += 1
>--else:
>----number = 3 * number + 1
>----m += 1
Ветка if не влияет на условие, и ты никогда не выйдешь из цикла, попав в if. Неудивительно, блядь, что он у тебя СЛИШКОМ ДОЛГИЙ.
Аноним 09/02/19 Суб 20:48:06 #52 №1344754 
>>1344752
Ага, спасибо, я уже нашёл, где проебался. Но вопрос в силе: как-то While можно переписать?
Аноним 09/02/19 Суб 22:17:35 #53 №1344824 
>>1344754
А что ты хочешь сделать?
Аноним 09/02/19 Суб 23:01:30 #54 №1344853 
Пишу бложик на джанге, вот есть у меня посты, хочу у каждого поста сделать кнопку, чтобы можно было добавить в сохраненные для моего пользователя. Как это реализуется? Есть шаблон, есть вью от ListView. В шаблоне у каждого поста делаю <form>, у которой делаю кнопку <input бла-бла>. А какой экшон у формы делать? Как там передать pk поста, который хочу добавить?
Алсо, в какой вью это следует обрабатывать: в этой же написать метод post или сделать отдельную вью для таких целей?
Аноним 09/02/19 Суб 23:06:26 #55 №1344855 
Предположим надо выводить информацию, да не в консоль простую, а в левыый верхний угол экрана.
Типа как ФПС в играх выводится и нагрузка на ЦПУ.
Только мне надо поверх всех программ и рабочего стола.
PyOpenGL или Tkinter лучше дрочить?
Может есть решения попроще?
Аноним 09/02/19 Суб 23:49:23 #56 №1344875 
>>1344853
Можно и без формы, фигачишь url вида path('fav/add/<pk>/', views.add_to_favorites

Фигачишь модельку вроде:
class Favorites(models.Model):
..user = models.ForeingKey(User, ....)
..post = models.ForeingKey(Post, ....)

Пишешь вьюху типа
def add_to_favorites(request, pk)
..post = get_object_or_404(Post, pk=pk)
..try:
....post = Favorites.objects.get(user=request.user, post_pk=pk)
....if not post:
......Favorites.objects.create(user=request.user, post=post)
Аноним 09/02/19 Суб 23:51:38 #57 №1344876 
>>1344875
обосрался чутка
>..try:
>....post
>....if not post:
переименуй тут пост в какую-нибудь другую хуйню, например FavPost
а ниже ничего не меняй пихай пост, который нашло или не нашло через get_object_or_404
>......Favorites.objects.create(user=request.user, post=post)
Аноним 09/02/19 Суб 23:53:54 #58 №1344878 
>>1344855
у ткинтера это из коробки
root = Tk()
root.wm_attributes("-topmost", 1)
Аноним 10/02/19 Вск 00:05:28 #59 №1344883 
>>1344875
Короче, обрабатывать пост-запрос во вьюхе, которая список показывает, не стоит, так? Отдельно писать лучше для таких вещей + какой-то свой url для неё. А как без формы? Просто ссылку на этот url? Где-то читал, что если запрос меняет состояние системы, то не стоит использовать GET.
А для чего тогда может пригодиться переопределение метода post в ListView? Я пока так сделал, но мне не нравится, что в шаблоне у формы экшон содержит урл и параметр к нему, а урл всех постов не подразумевает никаких параметров, как-то глупо выходит.
Аноним 10/02/19 Вск 00:50:05 #60 №1344891 
Screenshot at 2019-02-10 02-49-31.png
как отфильтровать этого говна, чтобы остались только строки с днями недели ? желательно написать код, сенкс
Аноним 10/02/19 Вск 00:59:56 #61 №1344896 
>>1332788 (OP)
Проебался сегодня целый день запихивая фласк приложение в ехе файл и все из за одной функции которая из html делает pdf. Как оказалось из за того что os.path строит неправильный путь к папке. Думал захардкодить биьлиотеку, но в итоге 1 вызов поиска пути пока никак не могу обойти, кроме как переписать весь модуль. Почти построил троллейбус из хлеба.
Аноним 10/02/19 Вск 01:00:47 #62 №1344897 
Screenshot at 2019-02-10 02-59-49.png
>>1344891
почему это не работает ?
Аноним 10/02/19 Вск 01:06:03 #63 №1344898 
>>1344897
все, я решил, соре
Аноним 10/02/19 Вск 01:07:44 #64 №1344900 
Снимок экрана 2019-02-10 в 1.07.19.png
>>1344883
Аноним 10/02/19 Вск 01:10:05 #65 №1344901 
>>1344891
import re
match = re.findall(r'(\d+.\d+.\d+)')

так сойдет?
Аноним 10/02/19 Вск 06:22:45 #66 №1344917 
Бамп вопросу
Аноним 10/02/19 Вск 06:23:17 #67 №1344918 
>>1344452
Бамп вопросу
Аноним 10/02/19 Вск 09:33:23 #68 №1344956 
>>1344737
Сложна, сложна, ничея непонятно.
Но ведь эта штука нужна для выделения деталей на совершенно различный недетерминированных данных. Типо найти всех кошек на рандомных фотографиях животных. А у меня они полностью детерминированы - определены заранее.
Похоже дешевле всего будет привязать к каждому изображению какойто числовой первоначальный классификатор (типо суммы всех точек или точек в определенных позициях), искать по этому значению в базе изображений, и для случившихся нескольких совпадений сравнивать изображение попиксельно с готовыми образами.
Но это придется делать руками. А так хотелось подключить какую-то волшебную библиотеку, прописать пару параметров и больше ничего не делать.
>>1344721
Мне просто нравятся таблички.
Аноним 10/02/19 Вск 11:43:33 #69 №1344987 
Ну через for это как-то сделать можно?
Или как разбить на отдельные функции?
Аноним 10/02/19 Вск 12:31:12 #70 №1344996 
>>1344900
Про GET и состояние системы: речь о том, что если запрос что-то изменяет на стороне сервера, а не просто получает данные, то для таких целей нужно использовать другой метод, например, POST.
Про урл и параметр в форме: ничем не плохо, кроме того, что у меня посты по адресу '.../blog/', и этот адрес никаких параметров не подразумевает. А в форме у меня action содержит этот же адрес, но ему передается еще параметр. Несоответствие получается, хотя оно и разруливается потом в контроллере. Ну да ладно.
Аноним 10/02/19 Вск 12:43:36 #71 №1345002 
Уже два года пишу на питоне, понял, что это обычная империативная дрисня с сахаром без изюминки. Чо делоть? Вкатывается в функциональщину со всем ее матаном? Я пока не хочу возвращаться к маминым борщам
Аноним 10/02/19 Вск 14:55:54 #72 №1345065 
Screenshot245.png
Анон, читаю учебник по питону (из ОП поста) и в теме с условиями написано, что использование tab для отступов не рекомендуется.
Чому так?
Аноним 10/02/19 Вск 15:08:03 #73 №1345080 
>>1345065
Потому что ты читаешь книгу 83 года от рождения христа. Уже давным давно этот вопрос закрыт, что использовать абсолютно похуй, можешь как угодно сконфигурировать любой редактор, назначить на клавишу "таб" 4 пробела, использовать табы как сивол, использовать пробелы, разница только в самом факте. Забей. Я даже не знаю как это настроено в моих редакторах\иде, потому что разницы нет. Любой кто будет утверждать иное - шизик 50+ лет.
Аноним 10/02/19 Вск 15:30:07 #74 №1345100 
Анончики, тут есть те, кто учил питона по онлайн-курсам типа codecademy и stepik? Получить основы я там смогу?
Сейчас вот начал курс на кодекадеми, параллельно нужно ещё читать учебник? Если да, то начинать сразу с Марка лутца - Изучаем питон, или есть более дружелюбная книга к нубам в языках программирования? книги по алгоритмизации не советовать, это и так понятно.
Аноним 10/02/19 Вск 15:46:53 #75 №1345118 
>>1345100
Ну, основы ты хоть где можешь получить.
Но смотри, чего тебе не хватает: ошибаешься в синтаксисе - ищи уроки по синтаксису, тупишь над решением - качай логику.
Основы это там сама "база", которую пишут в вакансиях погрмистов? Если ты в этом смысле, то это знание синтаксиса языка и ООП (ну и умение всего этого применять, конечно же).

Прошел SoloLearn, но там лишь на синтаксис упор (охуевший упор), никаких реальных задачек для мозгов нет.

Алсо, книги многими не рекомендуются, так как они быстро устаревают. Для примера: прочти пару постов выше.
Аноним 10/02/19 Вск 15:52:56 #76 №1345122 
>>1345118
Понял, анончик.
Основы это синтаксис языка и умение записывать алгоритм на нем, ну то есть все эти массивы хуйсивы циклы и прочее. Синтаксис, я так понял, заебись дадут на курсах, а дальше нужно будет либо искать простые проекты сапера там написать, скрипт под что-нибудь, либо решать всякие олимпиадные задачи на логику и её прокачивать, так? нарабатывать умение мыслить алгоритмами Параллельно с этим изучать прочие возможности языка, Django всякие и графические интерфейсы.
Все верно описал?
Аноним 10/02/19 Вск 16:02:56 #77 №1345125 
>>1345122
Да, все верно. Да и в принципе, самое умение думать и находить решение - важнее, ящитаю. Так как синтаксис можно быстро подтянуть.
> а дальше нужно будет либо искать простые проекты сапера там написать, скрипт под что-нибудь, либо решать всякие олимпиадные задачи на логику и её прокачивать, так?
Если найдешь курс, где после каждой темы будут давать годные задачи, то это тоже хорошо.
В целом, да, ты прав.
Аноним 10/02/19 Вск 16:28:39 #78 №1345144 
>>1345125
На кодекадеми задачи в платном курсе, я пока бесплатный дрочу. Потом пройду курс на stepik и питонтьютор, там по идее будут задачи. После этого, думаю, уже смогу что-то осилить из простых скриптов и задач.
кстати о сапере, на питоне можно написать полноценного сапера с графическим интерфейсом? Естественно, когда научишься.
Аноним 10/02/19 Вск 16:34:18 #79 №1345149 
>>1345144
Лучше не платить, можно и бесплатно обучиться. И в открытом доступе есть все знания и уроки.
Но если тебя будет мотивировать то, что ты заплатил, то другое дело.
> на питоне можно написать полноценного сапера с графическим интерфейсом?
Вот этого не знаю, правда.
Я такой же, как ты, хулиган нуфаг в питоне.
Аноним 10/02/19 Вск 16:47:14 #80 №1345166 
>>1345149
Я пока вообще платить не собираюсь, так как не знаю, зайдет ли мне программирование. Если заебет за пару месяцев - значит не моё и можно смело забывать о нем на всю жизнь. Понравится дрочить код - значит можно учить дальше.
Аноним 10/02/19 Вск 16:59:38 #81 №1345176 
>>1345080
> Я даже не знаю как это настроено в моих редакторах\иде, потому что разницы нет. Любой кто будет утверждать иное - шизик 50+ лет.
А потом скрипты не работают потому что какой-то мудила табы вместо пробелов сделаны, в твоем редакторе автоматическое преобразование табов в пробелы.
Онли пробелы
Аноним 10/02/19 Вск 17:18:11 #82 №1345192 
>>1345176
О, а вот и старпер подъехал. В чем кодишь, коммодоIDE?
Аноним 10/02/19 Вск 18:22:51 #83 №1345227 
В чём плюсы питона? Почему он так популярен? Есть и были более производительные языки, но библиотеки для питона пишут. Даже для нейросетей библиотек больше, чем для других языков. Почему так?
Аноним 10/02/19 Вск 18:31:03 #84 №1345232 
>>1345227
>Есть и были более производительные языки,
Потому что производительность это не самая главная характеристика языка, питон простой, не байтоебский, на нем быстро пишутся программы и есть очень хорошая стандартная библиотека.

>нейросетей библиотек больше, чем для других языков
Нейронками занимаются те люди которые не хотят ебаться с указателями, освобождением памяти и прочими низкоуровневыми вещами. К тому же под капотом у этих библиотек те же плюсы, которые обеспечивают приемлемый перфоманс
Аноним 10/02/19 Вск 18:31:54 #85 №1345233 
>>1345192
Ты иде для небольшой правки скрипта открывать будешь? Или воспользуешься тем же nano\блокнотом?
Аноним 10/02/19 Вск 18:39:27 #86 №1345239 
>>1345227
Потому что пиар гугла. В общем-то и все.
sage[mailto:sage] Аноним 10/02/19 Вск 18:41:14 #87 №1345240 
>>1345232
> питон простой, не байтоебский
Но байты ебать там с обёртками вроде hex, ord и bytearray со слайсами одно удовольствие.
Аноним 10/02/19 Вск 18:53:04 #88 №1345253 
>>1345100
Codecademy вообще херь какая-то, хотя я тоже сдуру с неё начинал. По 10 раз одно и то же "напишите 5 + 2", а теперь "2 + 5", а теперь " 5 - 2", теперь "a = 5, b = 2, a - b". Хуитка для даунов. То, что они там размазывают на ебаную тьму времени можно освоить за 15 минут. На степике курсы по-моему какие-то поверхностные слишком, лучше уж укус питона навернуть, если совсем очоба нужна. Та же хуйня, только быстрее и понятнее будет. После укуса Лутца навернуть, после Лутца наворачивать fluent python.
Главное параллельно с этим упражнения делай. Не знаю, мне лично больше гораздо помогают поставленные мне задачи кем-то или чем-то, а не придуманные самостоятельно.
Аноним 10/02/19 Вск 19:04:56 #89 №1345261 
>>1345233
Воспользуюсь вимом, плагин для проверки синтаксиса при сохранении мне скажет, если в файле намешаны табы с пробелами, после чего я использую :retab что бы все пофиксить.
Я коммодоиде я вспомнил потому что все современные редакторы (и иде) давно уже чхать хотели, что там у тебя, ибы пробелы, все сразу, ничего вообще, а если у кого то с этим проблемы, значит он использует софт из нулевых, как коммодо
Аноним 10/02/19 Вск 20:06:55 #90 №1345286 
>>1345240
Не, после C ебать байты в питоне гораздо более заморочено. То, что на С выглядит естественно и непринужденно, в питоне будет смотреться как прыжок изподвыподверта.
Аноним 10/02/19 Вск 20:20:44 #91 №1345299 
Анон, а по какой именно книжке Лутца начинать изучать? Сейчас закончил читать Укус, и я так понимаю, после него нужно смотреть Лутца, но в гайде от него как минимум две книжки для начинающих - "Изучаем питон" и "программирование на питон". С чего из этого начать? Или они взаимозаменяемы?
Аноним 10/02/19 Вск 20:54:49 #92 №1345320 
>>1345299
Изучаем для начала, наверно. Они разные: программирование больше по прикладному применению, а другая про сам язык.
Аноним 10/02/19 Вск 21:49:08 #93 №1345344 
>>1345320
А есть книги только по 3 версии, без сравнения с 2?
Аноним 11/02/19 Пнд 09:03:46 #94 №1345490 
>>1345344
По-моему нет таких, по крайней мере у лутца. Да ты не ссы, там немного и может пригодиться. Ну или просто бери да пропускай сравнение со второй версией.
Аноним 11/02/19 Пнд 09:23:18 #95 №1345498 
>>1345299

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

Объяснюсь: укус питона хорош как вводная книжка, но не все аспекты раскрывает. Лутц же пипееец скучный, и если ты раньше не программировал, с большей долей вероятности тебя будет вырубать. Меня вырубало после прочтения 3 страниц, когда читал в первый раз.

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

Из самого Лутца сначала Изучаем, потом Погромируем.
Аноним 11/02/19 Пнд 15:18:27 #96 №1345646 
Что почитать про ООП в питоне? Типа Создание своих базовых классов помимо обжекто.
Трюков с метаклассами.
Синглтоны на метаклассах итд.
Спасибо.
Аноним 11/02/19 Пнд 20:00:18 #97 №1345885 
Я сделол функцию, которая может выполнять только определенное количество корутин одновременно. (чисто ради интереса)
https://repl.it/repls/MatureFlakyDemo
Можно ли бы это написать более элегантно?
Аноним 11/02/19 Пнд 20:39:26 #98 №1345927 
>>1345885
Перепелил так, что бы можно было засовывать любую итерируемую последовательность
https://repl.it/repls/ThoseWickedSdk
Аноним 11/02/19 Пнд 23:30:56 #99 №1346084 
https://thonny.org/
Аноним 12/02/19 Втр 01:56:07 #100 №1346125 
>>1335838
https://pastebin.com/scs4essx
Остльные решения как на паскале написаны
Аноним 12/02/19 Втр 08:57:27 #101 №1346194 
image.jpeg
Успешные 300кк в наносекунду, расскажите за устройство на работу питониста.
Как собеседование проходит? Какие тестовые задания давали?

Есть тут те, кто вкатились в бэкенд для веб- приложений? Поясните за специфику этого направления.
Аноним 12/02/19 Втр 10:31:38 #102 №1346222 
>>1346194
Я вкатываюсь пока только в джуна, если интересно, то вот опишу пока свой опыт.
Собеседования скорее не проходят -- просто отклики игнорят либо присылают отказ. На остальных меня лично на одном просто спрашивали в общих чертах насколько знаю язык, с какими фреймворками работал и тд. На другом более конкретные вещи спрашивали типа какие типы данных основные есть, чем они отличаются, зачем нужен кортеж, если есть список и тд, потом про джанго немного: чем селект_ от префетч_рилейтед отличается, например. Эти ребята не давали тестовых. Гитхаб тоже никто не смотрел.
Две другие вакансии сразу (походу бот) кинули тестовые. Первая: у них есть классы для работы с рест и вебсокет апи трёх криптовалютных бирж, надо к ещё одной китайской написать такие же. Только они хотят работать с базовыми классами, потому тебе надо разобраться (ни комментариев, нихуяшеньки нет) какой атрибут в базовом классе апи за что отвечает в этой криптоссанине и написать класс, который будет представлять собой соответствие их атрибутов и эндпоинтов/параметров апи. Говно, если честно. Я больше пытался понять что есть что и почему кривая китайская апишка не реагирует на половину параметров (потом увидел issue на гитхабе, которые никто не закрывает), а не код писал. Второе задание было написать бэк для бложика на джанго + фронт на html: пользователи через админку, они могут подписываться на других, у них есть лента с постами от тех, на кого подписаны, в ленте можно пост пометить прочитанным + при появлении нового поста пользователь должен получить уведомление на мыло. Вот тут уже я код писал и довольно много, в соседнем треде говорят вон, что это говно, а не контора, если джуну в качестве тестового даёт столько кода писать. Ну хуй знает, посмотрим, что ответят, так-то всё равно я что-то подобное собирался делать для практики. Про тесты не говорили, я решил немного написать, но не все сделал, потому что уже времени не осталось и я не знал как тестировать формы и вью для обработки пост-запросов. В соседнем треде анона за отсутствие тестов разъебали. А ещё логи и обработка исключений оказались очень важны, а я не особо парился над ними.
Аноним 12/02/19 Втр 10:46:56 #103 №1346224 
>>1346194

Ничего в этом сложного особо и нет, пришел, поспрашивали за синтаксис питона, что-то из жс-хтмл-ксс, так, хуиту, даже не вспомню. Долго ебали с сикуэль (оказалось, писать запросы надо 90% времени), ну я его еще до вката как-то знал, так что более менее. Ну там какие-то теоретические вещи, типа пузырьком по сортировать, че такое бинарное дерево, такого уровня.
Посмотрели мои говнопетпроекты на гитхаб, всякие там бложики-хуежики, пара сверстанных лендингов, акк на кодеварс. Сказали, типа "хули ты кодишь как долбаеб, тебе бог лямбда-функции дал? Нихочу, хочу жрать говно". Ну я такой, типа, что бы читаемость, хуе-мое. Похвалили за комменты и относительную читаемость говнокода.
Спросили про люнухс, честно сказал, что очень смутно ебу, че там да как, но вот, типа интересуюсь Си, в планах сделать проект, туда-сюда, поэтому буду осваивать.
Спросили, че хочу сделать, вот, типа, говорю, буду онлайн-компилятор мутить для языков брейнфак и уук, типа, что бы по фану можно было поиграться.
Поговорили за эти языки немножко, сказал, что заинтересовался прогерством из-за низкоуровневой хуиты, робота хотел сделать, который мне масло передаст. Ну чел заценил вроде, посмеялся так, нормально.
Потом короче спросил, есть ли у меня вопросы, ну я там начал спрашивать за то, как они джунов учат, помогают-объясняют ли, про митапы, соврал, что давно хочу на МоскоуПайтон сгонять, про проект спрашивал, ну ваще так, показал, что мне интересно развиваться. Спросил, че мне хочется дальше делать в жизни, я сказал, что нравится пилить свои проекты, хочется прокачаться в управлении, и вообще приятно видеть результат работы. Как-то так, ну это правда.
В конце про ЗП сказал, типа сколько хочешь, я ответил, что понимаю, что много особо не дадут, и я потеряю в зарплате, зато буду заниматься тем, что нравится.
Короче, сказали, ну окай, давай мы подумаем еще, позвоним, но так у нас предложение 30к на первые 3 месяца, типа испытательный, потом 40к, а дальше как себя проявишь.

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

На самом деле страшно было оч, тупил много, на самом деле, какую-то чушь нес о том, зачем нужен __init__, но блять рассказал про отличие списка от массива и про указатели, если дали бы какую задачку - я бы обосрался, но, я так понял, гитхаб с кодварс чел заценил (мне понравился кодеварс, я там по фану каждый день задачки решал), ну и вроде как ему понравилось, что я мотивирован.

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

До этого был на двух собеседованиях, на фронта и на фуллстек. На первом обосрался везде, где смог, на втором криво сдела тестовое.

Как-то так.
Аноним 12/02/19 Втр 13:53:58 #104 №1346299 
>>1346222
> с какими фреймворками работал
> про джанго немного
> из жс-хтмл-ксс
Это прям обязательно или нужно хотя бы знать?

И сколько времени дается на вот это:
> написать бэк для бложика на джанго + фронт на html
Хотя, я на бэкенд пойду, то вряд ли мне фронт будут на тестовом давать. Или нет?

Спасибо. И удачи тебе с устройством.


>>1346224
> гитхаб с кодварс чел заценил
А если ничего нет и опыта написания проектов нет вообще?

Удачи тебе на работке.


Аноним 12/02/19 Втр 14:41:02 #105 №1346321 
>>1346299
> Это прям обязательно или нужно хотя бы знать?
Зависит от каждой конкретной компании и позиции, сам подумай. В одном месте просто пытались, видимо, мой кругозор оценить, в другом, где вакансия была четко под джанго, естественно задавали вопросы про джанго.
Короче, я думаю, если в списке технологий или в обязанностях указано что-то конкретное как основной инструмент, то скорее всего что-то про это нужно будет знать. В остальных случаях, особенно если "будет плюсом" иногда на похуй просто могут спросить имеешь ли ты хоть какое-то представление, и если имеешь, то заебись, а если нет, то пёс с ним.
Из фронта меня только на вакансии рубиста закидали вопросами, потом выяснилось, что им фулстек нужен и вообще мидл, ну и я в гробу видал их фулстек вместе с руби после питона любой другой скриптовой язык говном кажется теперь, лол, а от вёрстки меня воротит больше, чем от байтоёбства.
Но как я понял, много где на позиции бэка требуется представление о базовых каких-то вещах из фронта. Можно очень быстро разобраться и освоиться, пройдя какой-нибудь курс, например, на freecodecamp базы неплохо даются. Сможешь рассказать про то как три колонки на страничке ебануть и в розовый раскрасить и хватит.
> И сколько времени дается на вот это
Мне дали 3-4 дня на это, проект надо было залить на гитхаб и вообще там должен прослеживаться процесс разработки. Честно -- клоунада с созданием мёрдж-реквестов самому себе это тот ещё абсурд, я будто с зеркалом разговаривал.
В самом задании написано 1-2 дня, вот тут я охуел, потому что джун вряд ли столько напишет за такой короткий срок. Если разбивать на нормальный рабочий день, то у меня наверно вся рабочая неделя ушла бы на это минимум, но я дома сижу, и могу себе позволить писать код больше 8 часов, если надо. А вот на что они рассчитывали, если у меня была бы работа? Физически невозможно просто за 3 дня столько кода выдать.
> я на бэкенд пойду, то вряд ли мне фронт будут на тестовом давать
Ну я тоже на бэк претендую, но как видишь... Там минимум, наверно, чтобы понять имеешь ли ты представление о шаблонизаторе, не знаю. Если не заморачиваться, то можно довольно быстро накидать шаблоны и на css вообще забить, я думаю. Я просто немного заморочился и сделал говно-ДИЗАЙН, хотя в css у меня тот ещё бардак и куча копипасты из интернета, да ну и срать на него.
Ящитаю, если даже простейшая верстка потребуется, то на ходу разберешься -- инфы много и там не так сложно (по крайней мере очоба). Скорее просто знать надо кучу параметров и их значений. Я раньше не писал никакие странички вообще, тем более стили для элементов не делал, не так много времени на это ушло, к тому же повторяющиеся или общие для страниц вещи можно запихнуть в один базовый шаблон и наследовать его в других -- это очень сильно упрощает жизнь и ускоряет написание.
А вот если потребуют какой-нибудь жс-фреймворк или бутстрап, то я бы дропнул такое задание. Сам просто пытался вкатиться в vue, и там много всего слишком для того, чтобы взять и за вечер написать. А когда я пытался сам написать проект с бутстрапом, я очнулся через несколько дней с осознанием, что на бутстрап больше времени трачу, чем на всё остальное, и забил.
> удачи тебе с устройством
Спасибо, и тебе. Надеюсь, хоть что-то полезное из моего словесного поноса найдешь для себя.
> А если ничего нет и опыта написания проектов нет вообще?
Знаю, что не мне адресовано, но вставлю свои 5 копеек. У меня больше 200 просмотров резюме уже и одни отказы да игноры. Я слежу за insights->traffic на гитхабе. И знаешь что? Всем до пизды мои поделки, их смотрели только один раз непосредственно пока я на собеседовании сидел решал задачку. Я думаю, это может быть плюсом, но не везде. И это едва ли поможет тебе попасть на собес, а на собесе всё решишь ты сам при разговоре. А уж всё остальное вообще сомневаюсь, что кто-то смотреть будет. То есть, у тебя на гитхабе может быть второй вконтакте реализован, а тебе на отклики будут приходить отказы по неизвестным для тебя причинам, потому что твой гитхаб никто не смотрел и не собирался даже смотреть.
Аноним 12/02/19 Втр 15:19:15 #106 №1346338 
>>1346299

>А если ничего нет и опыта написания проектов нет вообще?

Я хз анон, я про тестовое забыл написать, что спросил, че мне его не дали, а чел сказал, типа у них тест - тот же бложег, так что они подумали, нахуй надо.
Аноним 12/02/19 Втр 17:55:54 #107 №1346415 
Можно ли Python'ом считать содержимое файла с расширением .dt?

Если нельзя, то как .dt конвертировать в .csv?
Аноним 12/02/19 Втр 21:44:45 #108 №1346517 
Снимок экрана в 2019-02-12 22-44-14.png
Питониты, подскажите, как запустит код циклично.
Хочу проверить код, заменив rage>0 на >10.
Как это можно сделать?
А то в Spyder нужно вечно перезапускать программу и тогда переменные сбрасываются.
Аноним 12/02/19 Втр 22:04:50 #109 №1346526 
>>1346517
Сделал. Просто в цикл засунул.
Всем спасибо.
Аноним 12/02/19 Втр 23:11:39 #110 №1346552 
>>1346299
Как мне кажется на питоне нужен либо фулл стак поддерживать проекты со стеком django/flask + jquery, либо писать современное апи на котором уже будет работать фронт с использованием современного стека. Я конечно могу ошибаться, так как не работал разрабом, но имел опыт общения с людьми кто набирал людей на проекты.
Аноним 13/02/19 Срд 10:16:39 #111 №1346690 
>>1346552
>Как мне кажется на питоне нужен либо фулл стак поддерживать проекты со стеком django/flask + jquery, либо писать современное апи на котором уже будет работать фронт с использованием современного стека.
Работаю чистым бекендом, ссу на фулстаков, которые делают двойную работу
Аноним 13/02/19 Срд 12:20:56 #112 №1346762 
Как парсить аудиофайл из вк?
Аноним 13/02/19 Срд 13:25:22 #113 №1346786 
>>1346762
В смысле парсить аудиофайл? Посмотри, может тут есть нужная тебе функциональность: https://github.com/python273/vk_api
По-моему этот пакет может и просто список аудио получить, и ссылки на треки.
Аноним 13/02/19 Срд 14:26:35 #114 №1346834 
>>1346786
Он отдает только информацию о треке, а я хочу именно файл качать
Аноним 13/02/19 Срд 14:27:46 #115 №1346836 
Джанганы, нид хелп.

Есть инет магаз кое-какой технической достаточно сложной хуйни.
В нем есть приложения:
- Каталога (где товары). Товары содержат базовую цену и пиздец.
- Конфигуратора товара - те списка вариантов как допердолить девайс под свои нужды, ничего грубо говоря заумного, но для каждого товара свои потребности в конфигураторе. Конфигуратор состоит из 2 моделек типа Слой и Опция. Слой - это совокупность Опций.
- Корзина на сессиях - самодельная и не очень хитрая.

Как мне передавать в корзину список выбранных опций товара? Как мне потом допилить на страничке просмотра корзины кнопку "изменить опции" и чтобы передавать обратно из Корзины опции в Конфигуратор? Как бы вы подобное делали?
Аноним 13/02/19 Срд 14:44:15 #116 №1346849 
>>1346836
Может кто-то где-то видел корзины хранящиеся в моделях и БД, а не в сессиях? Так было бы удобнее, думаю.
Аноним 13/02/19 Срд 14:44:49 #117 №1346850 
>>1346834
Ну как пример:
[code]
import vk_api
from vk_api.audio import VkAudio

vk_session = vk_api.VkApi(login=login, password=password, token=token)
vk_session.auth()

vk_audio = VkAudio(vk_session)
tracklist = vk_audio.get(owner_id=user_id)
[/code]
В tracklist получишь список словарей, в словарях по ключу 'url' есть ссылка на трек, она открывается в браузере и если выполнить
> wget %audio-url% -O track.mp3
То он загрузит его, файл играется -- я только что проверил.
Аноним 13/02/19 Срд 14:47:24 #118 №1346853 
>>1346850
Анончек, ты бог, спасибо!
Я собираюсь сделать клиент вк на десктоп, типа телеги
Будут диалоги, с возможностью качать и прикреплять файлы и музыка
Как то так
Аноним 13/02/19 Срд 15:01:43 #119 №1346860 
>>1346853
Да не за что, читай доки внимательнее.

Аноны, а как обойти блокировку телеграма, если я хочу для него бота написать на requests/aiohttp? Знаю, что есть пакеты, где можно просто прокси прописать, но хочу попробовать без них всё сделать. Пока ничего не нагуглил полезного.
Аноним 13/02/19 Срд 15:14:02 #120 №1346865 
Снимок экрана 2019-02-13 в 15.13.17.png
>>1346860
https://habr.com/ru/post/425151/
https://github.com/LonamiWebs/Telethon
Аноним 13/02/19 Срд 15:23:36 #121 №1346870 
>>1346865
Ты мне предлагаешь опять сторонние пакеты использовать, а я хочу без них на голом requests, а потом aiohttp всё написать.
Аноним 13/02/19 Срд 15:34:11 #122 №1346873 
>>1346860
У меня без проксей работает, мимо анон про вк смрашивал
Аноним 13/02/19 Срд 15:44:10 #123 №1346883 
>>1346873
Да какыть оно у тебя без проксей работает? Вот я пишу requests.get(...) и всё, оттуда управление уже не возвращается.
Аноним 13/02/19 Срд 15:47:11 #124 №1346884 
>>1346883
Хуй знает анончек, никаких проксей не делал
Аноним 13/02/19 Срд 15:47:48 #125 №1346885 
Ну это месяца 2 назад было, щас хз. В любом случае поставил на pythonanywhere и забыл
Аноним 13/02/19 Срд 22:21:01 #126 №1347149 
>>1346870
Я тебе на PySocks кивал, либа для работы через сокеты + пример бота, как там их используют. Реквестс очень маловероятно умеют через них работать.
Аноним 13/02/19 Срд 22:30:17 #127 №1347151 
>>1332788 (OP)
Почему в tkinter filedialog, окошечко, в котором выбираешь какой файл открыть или сохранить, в винде выглядит нормально, как системный файлдиалог, а в убунте 18.04 выглядит вырвиглазно, хуже чем убунтовский системный файлдиалог, и вообще весь tkinter в убунте вырвиглазный, а винде нормальный, особенно если виджеты из ttk использовать, как можно это исправить?
Аноним 13/02/19 Срд 22:35:32 #128 №1347154 
>>1347149
Не, гляди-ка: http://docs.python-requests.org/en/master/user/advanced/#proxies
Похоже, умеет с прокси работать. Я даже не думал про это и не пытался искать, потому что считал, что придется много пердолиться, чтобы заставить реквестс работать через прокси.
А вот aiohttp не может в носки, но вот тут предлагают костыль: https://stackoverflow.com/questions/36960800/is-there-any-way-to-use-aiohttp-client-with-socks-proxy
Завтра попробую.
Аноним 13/02/19 Срд 23:27:54 #129 №1347176 
>>1346860
export HTTP_PROXY=
export HTTPS_PROXY=
Всё, что использует urllib2/3(включая requests) будет работать по этому прокси.
Это если нужен глобальный прокси. Для отдельных запросов параметр proxies
>>1347149
Смотрите, питонодебил не в курсе собственной платформы.
Аноним 14/02/19 Чтв 12:08:21 #130 №1347414 
Схуяли supervisor еще на 2.7? А ну быстро кабанчиком на троечку перекатили!
Аноним 14/02/19 Чтв 21:48:50 #131 №1347704 
Аноны, а bot api телеги не предоставляет никаких возможностей получать сообщения из каналов? Что-то гуглю и кроме как добавить бота через админа канала больше никакой возможности это делать не вижу.
Аноним 14/02/19 Чтв 22:18:31 #132 №1347725 
>>1347704
Нет, такого нет. Можно парсить
Аноним 14/02/19 Чтв 22:25:04 #133 №1347732 
>>1347725
Хреново, тогда другой вопрос: если я всё то же самое запилю через просто обычный api телеги и захочу залить на какой-нибудь heroku, чтобы оно работало, и я им пользовался, как в таком случае залить вместе с кодом конфиденциальную инфу для аутентификации? Не просто же в текстовом файле в открытом виде?
Аноним 15/02/19 Птн 16:01:43 #134 №1348191 
image.png
Аноны, прошу, напишите мне пример кода, как отправить сообщение через вк апи, а в сообщение кинуть файл. Очень надо
Аноним 15/02/19 Птн 17:00:59 #135 №1348259 
>>1346690
Где можно почитать про апишки коммерческого уровня?
Аноним 15/02/19 Птн 17:39:38 #136 №1348295 
>>1348191
Отбой, сам доки почитал
Аноним 15/02/19 Птн 19:51:24 #137 №1348389 
Чет я не понял: tensorflow не поддерживает python 3.7 или просто у меня что-то на пеке не установлено?
Аноним 15/02/19 Птн 22:47:13 #138 №1348508 
>>1347732
Я кидал исходники на сервер пайтонэнивхере, там все данные были, вообще пох

>>1348389
Все ставится, у меня 3.7, полет нормальный
Аноним 16/02/19 Суб 08:52:50 #139 №1348643 
DMzFtFkVQAESSrz.jpg
>>1332788 (OP)

Сап, питоняши.

Не могу решить кату (задачу) с Codewars:

>Complete the function scramble(str1, str2) that returns true if a portion of str1 characters can be rearranged to match str2, otherwise returns false.

Написал код: https://pastebin.com/cRpnpa5Z

Он успешно проходит тесты, но слишком медленный.
Пробовал вместо in сделать бинарный поиск - по итогу стало еще медленнее.

Анончики, очень помогите пожалуйста оптимизировать.
Аноним 16/02/19 Суб 09:29:45 #140 №1348647 
>>1346853
> Будут диалоги
Огорчаю тебя: https://vk.com/dev/messages_api
Аноним 16/02/19 Суб 09:30:24 #141 №1348648 
https://code-basics.ru/languages/python
http://pythontutor.ru/
Аноним 16/02/19 Суб 11:27:38 #142 №1348675 
>>1348643
А пробовал словарь вместо списка?
Аноним 16/02/19 Суб 12:14:17 #143 №1348694 
Подскажите, как мне вытаскивать href из <a class="nav" href="/1808/"> назад </a> с помощью beautifulsoup? Типа, я буду постоянно тыкать на эту кнопку и на открывшейся странице забирать инфу, затем снова на эту ссылку тыкать и так бесконечно. То есть href каждый раз новый. Не очень въезжаю, как указывать на эту ссылку, имея только текст в ней, ну типа "назад", нутыпонел
Аноним 16/02/19 Суб 15:12:20 #144 №1348784 
Анон помоги с upset в sqlalchemy (Postres, psycopg2)
https://docs.sqlalchemy.org/en/latest/dialects/postgresql.html
Нихуя не пойму как это настроить. Есть база, объеявленая декларативно, скажем
class city(Base):
....__tablename__ = 'city'
....name = Column...
....index = Column...

Где то там в коде я создаю новый город
viskont = City(name='Viskont', index=111111)

Как теперь мне сделать upsert ?
Аноним 16/02/19 Суб 19:03:14 #145 №1348949 
>>1347151
Видимо, tkinter нынче совсем непопулярная тема. Неужели правда никто не в курсе?
Аноним 16/02/19 Суб 21:23:42 #146 №1349036 
>>1348643
Как топорное решение пойдёт, для малых размеров разницы никакой, но подумой, что происходит с текстом на болших размерах.

Сколько в алфавите букв? 52, включая регистры. цифры, символы и вся херня, в итоге 100 печатаемых символов. Как ни крути, не уникальных символов в итоге будет на порядки больше, чем уникальных. Этим можно воспользоваться. (Там, где количество повторений мало, предоставленный мной способ будет даже медленнее.)

Ты в своём коде на каждый элемент из s2 проходишься по всему в нихудшем случае списку s1, что в итоге даёт сложность, O(n×m) (размеры s1 и s2). на самом деле чуть меньше, потому что ты удаляешь элементы, математики помогите. Ну и удаление элементов из середины тоже не сильно производительности помогает.


Но если вспомнить про всего 100 возможных элементов, то станет ясно, что можно просто посчитать количество этих символов в s1 и s2 и сравнить, хватает ли их. Итого при "элегантном" в плане кода решении сложность уже линейная, O(n+m+k) (k - количество уникальных элементов в s2).

Ещё всё можно свести к одному проходу каждой из строк, записывая одновремнено количесво повторений всех символов, а потом их сравнить. Если ответ ответ отрицательный, то может быть хуже, а может быть лучше, смотря как быстро первый способ (считающий буквы поочерёдно) нашёл бы нехватающую. В коде видно, что в 6-7 раз медленнее может быть.
Но в целом уже выходит O(n+m) на составление счётчиков + O(k) на их сравнение. Не знаю, как правильно ли это писать через сумму двух O, суть та же — время растёт линейно и тут уже, наверное, сравнивать их стоит по средним временам, анализируя входящие в них операции и т.д. (явно не для задачи на 6 или 7 kyu но codewars)

https://repl.it/repls/ToughQualifiedDoom

Если очень надо, то:
1. Если есть какая-то информация о входных данных, во втором способе можно отсортировать буквы в порядке их среднего использования в языке. например, если предполагается, что из s1 собрать s2 будет нельзя, то велика вероятность, что не будет хватать как раз редких букв.
2. В третьем можно, вместо двух счётчиков, сделать один из s1, а затем декрементировать значения при обходе s2, прерывая, если упадёт ниже нуля.

(Господа математики, ткните носом в ошибки и подправьте мои O-нотации плз.)
Аноним 16/02/19 Суб 21:26:16 #147 №1349037 
>>1349036
>O(n+m+k) (k - количество уникальных элементов в s2).
Точнее, тут должно быть O((n+m)×k), вроде как (ведь мой код k раз проходит каждую из строк). А вот с одним лупом как раз (n+m+k).
Аноним 16/02/19 Суб 21:28:57 #148 №1349041 
>>1348694
Я понял что ты хочешь, ты хочешь происать так чтобы собрать все ссылки в обратном порядке и на всех страницах, так? Тоже удваиваю реквест.
Бамп.
Аноним 16/02/19 Суб 21:29:34 #149 №1349043 
>>1347732
Запили себе каштомный телега-клиент, ему каналы читать можно безо всякой ебанины.

Собственно, я изначально это тебе и рекомендовал со своими ссылочками, а потом ты или другой баклан сошли на говно что это потому что я мол стандартную либу не знаю.
Аноним 16/02/19 Суб 21:34:00 #150 №1349051 
>>1349043
Про либу не я писал и вообще не особо понял к чему тот пост был. Да, я в итоге сделаю как ты говоришь и буду работать через обычный апи для чтения каналов. Просто хотел запилить бота, которым бы мог кто угодно пользоваться, а так только я смогу, раз всё через мой аккаунт работать будет, по сути.
Придётся его ещё как-то огородить.
Аноним 16/02/19 Суб 21:37:42 #151 №1349056 
Антошь, как сделать так, чтобы результирующий arr был 3 мерный? (чтобы можно было иттерировать элементами формы arr2)

arr = np.array([])
arr2 = np.array([[1, 2], [3, 4]])
arr = np.append(arr, arr2)
print(arr2)
print(arr)

Вывод:
[[1 2]
[3 4]]
[1. 2. 3. 4.]

А надо:
[[[1, 2], [3, 4]]]
Аноним 16/02/19 Суб 21:38:52 #152 №1349057 
>>1348694
href может содержать либо абсолютный путь, либо относительный, либо ссылку на сторонний сайт.

Если ты находишься на example.com/a1/a2/a3, то:
href="/b1/b2" перебросит тебя на example.com/b1/b2 (т.е. это абсолютный путь от корня сайта)
href="b3/b4"   перебросит тебя на examples.com/a1/a2/b3/b4 (т.е. это относительный путь на уровне текущей локации)
href="http://www.google.com" перебросит тебя, очевидно, на гугл.

href ты достать можешь, текущий адрес есть — в путь.
Аноним 16/02/19 Суб 21:45:27 #153 №1349068 
>>1349056
np.array(arr2, ndmin=3)
Аноним 16/02/19 Суб 22:29:38 #154 №1349099 
>>1349068
Действительно работает. Но ты меня неправильно понял. :(
Мне хотелось бы добавлять в arr элементы формы arr2. Не только тот один arr2 что в примере, а много.
В этом плане ndmin не помогает.

Вообще в интернетах пишут:
Что обычный list.append выполняется примерно в 4 раза быстрее np.append.
И правильным решение по скорости выполнения похоже является создание list, а потом конвертация в np.array.
Но фуууу же, какое то костыле-строение.
Аноним 16/02/19 Суб 22:59:00 #155 №1349121 
Хотеть лаконичную книгу, чтобы вкатиться в питун с целью реализации чисметов и линейки.
Аноним 16/02/19 Суб 22:59:26 #156 №1349122 
>>1349099
>np.array returns a copy of arr
Зашквар, такой зашквар.
>примерно в 4 раза быстрее
Это я ошибся. При десятках тысяч элементов - в сто раз разница.
Странный какой-то метод np.append, вроде он и есть, а вроде его и нет.
Для больших массивов np.append ненужен - ибо копирование, а для маленьких весь np полностью ненужен.

Аноны, что с вашим питоном не так?
Казалось бы простой синтаксис и нету указателей. А пользоваться сложнее чем С с малоками и указателями.
Аноним 16/02/19 Суб 23:01:40 #157 №1349126 
diveintopython.png
>>1349122
>Аноны, что с вашим питоном не так?
Аноним 16/02/19 Суб 23:59:07 #158 №1349158 
Посоны порекомендуйте корзину для джанго.
А то чет что django-cart, что django-easycart уже протухли кажись
Аноним 17/02/19 Вск 00:15:19 #159 №1349164 
>>1349099
>>1349122
Вы не понимаете сути np.array, видимо. Это массивы, те самые, настоящие, а не списки. Они не созданы, чтобы им аппендили говно всякое без разбору.

>np.append, вроде он и есть, а вроде его и нет.
Его нет. Это просто для удобства использования его сделали и так назвали. На самом деле это то же самое, что создать новый.

Внутри это всё один большой кусок памяти, в котором идёт, скажем, 64 числа. Хочешь это одномерный из 64, хочешь — двумерный 8x8, или там 4x4x4, и т.д. А после добавления говна в конец эти цифры изменятся, при этом np.append позволяет соединять массивы разных длин/форм, поэтому что ты там хочешь получить в конце нампи гадать не будет, просто выдасть тебе одномерный массив, который изволь теперь сам делить как хочешь. Например, вот так — https://repl.it/repls/GlumBuoyantCone

>для маленьких весь np полностью ненужен.
нампи не только для скорости нужен (он даже не всегда быстрее чистого питона, написанного под конкретную задачу, вроде скалярного произведения одномерных векторов https://repl.it/repls/SubtleElectronicScreenscraper ), но ещё и для удобства работы. Слайсы всякие магические, векторы-хуекторы и т.д.

>А пользоваться сложнее чем С с малоками и указателями.
Если бы ты этим С с указателями (в них ничего сложного, кстати) пользовался, то вряд ли бы так истерично реагировал на подобное поведение.
Аноним 17/02/19 Вск 00:23:25 #160 №1349168 
>>1349099
Ещё на будущее на это взгляни — https://docs.scipy.org/doc/numpy/reference/generated/numpy.concatenate.html
Аноним 17/02/19 Вск 05:53:27 #161 №1349242 
3377374726.jpg
>>1349036

Анон, спасибо тебе огромное! Все очень понятно расписал.

В будущем буду лучше стараться и больше думать.

Аноним 17/02/19 Вск 11:28:56 #162 №1349312 
image.jpeg
Нуфаг здесь.
Поясните, как ena выходит за пределы индексов строки, если она равна количеству символов в строке?
Вообще, где я обсераюсь, блять?
Хочу сделать программу, которая бы выводила буквы и звездочками рисовала количество их повторений в слове:
t - *
i -

p -
И тд.

С циклом while выдает эту ошибку (охуеть). Если оставляю for, то он выводит повторяющиеся буквы, то есть, пишет одну букву дважды (или трижды, если она три раза встречается в слове.
ЧЯДНТ?
Аноним 17/02/19 Вск 11:57:07 #163 №1349352 
image.png
Почему в 2д19 я должен выбрать Питон для бэка, а не Го?
Аноним 17/02/19 Вск 12:05:51 #164 №1349360 
>>1349352
Не должен. Можешь быть свободен
Аноним 17/02/19 Вск 15:05:20 #165 №1349590 
>>1349312
Индексы строк/списков и прочего в большинстве языков, включая питон, начинаются с нуля.
>s = "abc"
>len(s) -> 3
но
>s[0] -> "a", s[1] -> "b", s[2] -> "c".

Соответственно, s[3] это уже вне строки.
Аноним 17/02/19 Вск 15:59:04 #166 №1349634 
>>1349164
>>1349168
Ок. Спасибо за ответ.
>Слайсы всякие магические
Вот оно мне в этом месте как раз для срезов массивов и нужно.
Аноним 17/02/19 Вск 20:19:27 #167 №1349940 
image.png
Какой минимальный стек для 30 летнего джуниора нужен?
Аноним 17/02/19 Вск 20:25:43 #168 №1349945 
>>1349940
Питон, джанго, мускул/постгресс, асинкио, раббитмкью, линукс, докер, тесты.
Аноним 17/02/19 Вск 20:31:12 #169 №1349954 
>>1349945
>джанго
Насколько хорошо/подробно?
Аноним 17/02/19 Вск 23:34:35 #170 №1350118 
>>1349945
>раббитмкью
Это разве на ждуна?
Очереди конечно просты как палки, но ждуну скорее всего нужно будет только знать команды для отправки\добавления колбека
Аноним 17/02/19 Вск 23:36:57 #171 №1350119 
>>1350118
Каждый жун занимается деплоем и лично разворачивает на боевом сервере код что пишет. Не задавай тут неудобные вопросы.
Аноним 18/02/19 Пнд 00:06:59 #172 №1350135 
>>1349945
А я вроде читал, что редис в качестве брокера для сельдерея работает быстрее кролика.
>>1349940
Чем раньше занимался? Я вот в 26 нихуя вкотиться не могу.
Аноним 18/02/19 Пнд 00:07:01 #173 №1350136 
IMG1178.jpg
Ну так шо, пацаны, модел-бейсед сессион джанго шопинг карт годный кто подскажет?
Аноним 18/02/19 Пнд 00:08:48 #174 №1350139 
>>1350135
>Чем раньше занимался?
Пытался не покончить с собой.
Аноним 18/02/19 Пнд 00:12:57 #175 №1350144 
>>1350135
>А я вроде читал, что редис в качестве брокера для сельдерея работает быстрее кролика.
Чо блядь? Редис это NoSQL хранилище, а кролик это брокер сообщений. У них задачи и функциональность совершенно разные.
Аноним 18/02/19 Пнд 00:13:38 #176 №1350146 
>>1350139
Что заставило тебя в питон ползти? Я вот смотрю на отказы и игноры моего резюме и думаю, что в ближайшие месяцы мне тем же самым предстоит заниматься.
Аноним 18/02/19 Пнд 00:14:57 #177 №1350147 
>>1350144
Я знаю, но редис же можно в качестве брокера для celery использовать.
Аноним 18/02/19 Пнд 00:18:46 #178 №1350148 
>>1350147
У редиса бывают проблемы с персистентностью на больших нагрузках, у нас отказались от него в пользу etcd
А так же с реббита переходим на кафку
Аноним 18/02/19 Пнд 00:19:30 #179 №1350149 
>>1350146
Да я на самом деле просто хотел узнать актуальный минимальный стек, на работу не хочу вкатываться. Просто нужно занять голову, решил написать игру-бот в телеге и пару идея для чат-игр на твиче есть(сам напишу, сам в них играть буду, естественно). Питон вроде простой язык, решил выбрать его.
Аноним 18/02/19 Пнд 08:21:09 #180 №1350245 
FTwgRobh6gqb — копия — копия (3).png
uQiVWkJj3Rao — копия (6) — копия.png
xgt1oSwqlDCX — копия (4).png
LfUdKy9TmGnv — копия — копия.png
Уважаемые Господа, моя задача - распознать карты, которые я получаю в размере 50х71 (пикрелейтед). Всего 52 выходных типа данных. (4 масти по 13 номиналов от двойки до туза)
Поставил керас с тенсорфлоу, подготовил данные. Но как мне определить какую структуру нейронной сети выбрать? Беру готовые варианты для мниста/цифар10 или пытаюсь сделать свою, в итоге получается что или сеть не обучается и буксует на 2-х процентах, или вроде всё идёт хорошо, с двух процентов сеть набирает до сотки (картинки то всегда одинаковые), тестовые данные тоже показываюТ 100%. НО когда я пытаюсь вручную через predict_classes посмотреть результаты по конкретным картам, мне показывает какую-то хуйню, 4рка буб и тройка пик может быть одного класса и т.д. В чем косяк? Как подобрать структуру сетки? Стоит ли обесцвечивать карты и оставлять только контуры перед обучением?
Или может другой, более удачный, метод решения моей задачи подскажите? Мне нужно делать скрин и максимально быстро распознавать карты на экране.
Аноним 18/02/19 Пнд 08:39:17 #181 №1350248 
>>1350245
>максимально быстро распознавать карты на экране
Еще бы! Иначе будешь деньги дерять на онлайновом покере. Твой бот будет тупить и проебывать раз за разом твои денежки, лол!
Аноним 18/02/19 Пнд 10:59:12 #182 №1350291 
Поясните за джанго орм vs алхимия vs пиви.
Аноним 18/02/19 Пнд 11:13:14 #183 №1350297 
>>1350291
Сэйм щит.
Аноним 18/02/19 Пнд 12:12:24 #184 №1350329 
Анон, который предлагал для телеги Telethon использовать, чяднт? Первый раз пытаюсь просто создать клиент и попробовать хоть какую-то инфу получить с телеги. И при первом же вызове client.start() он спрашивает номер, я ввожу и получаю FloodWaitError и предложение подождать сутки. Охуеть, там написано, что после 5 неудачных попыток будет такая хуйня, а тут ни одной не произошло.
Аноним 18/02/19 Пнд 14:17:32 #185 №1350421 
Даже вручную если сначала connect, потом request code делать, то сразу на хуй посылают. Из-за прокси что ли? Ебать как залогиниться-то?!
Аноним 18/02/19 Пнд 14:54:10 #186 №1350439 
>>1350421
Ты уверен что ломишься в сервак телеги, а не в заглушку долбоебов из РКН?
Закинь на питонэнивер и попробуй оттуда безо всяких проксей
Аноним 18/02/19 Пнд 15:01:10 #187 №1350442 
Есть на доске тред про jango, есть итт спецы по джанго, есть вопросы, изучаю фреймворк. Можно услышать вопросы на ответы?
Аноним 18/02/19 Пнд 15:22:13 #188 №1350451 
>>1350442
Хули там непонятного то, задвай сюда
Аноним 18/02/19 Пнд 15:26:44 #189 №1350453 
Django-REST или Flask?
Аноним 18/02/19 Пнд 15:27:31 #190 №1350456 
>>1350453
А какова цель вашего визита?
Аноним 18/02/19 Пнд 15:31:16 #191 №1350458 
>>1350291
Чисто из практики
> джанго орм
+ Очень удобный интерфейс, работать приятно, всё легко и просто.
- Медленная
> алхимия
+ Много примеров и готовых решений, просто бери и юзай в продакшене. Миграции и прочие важные плюшки присутствуют.
- Более убогого интерфейса не встречал, глаза вытекают, документация не структурирована нормально.
> пиви
Юзал один раз, но потом успешно сменил её на алхимию и больше не возвращался(надеюсь и не вернусь), от неё плеваться только хочется(хотя возможно это так программу с ней спроектировали, что у меня вызывали боль исправления)
+ Есть асинхронная версия её, вполне себе шустра.

Ещё и за pony-orm поясню немного, раз начал
> pony-orm
+ Удобный интерфейс(немного непривычный после джанги). Хорошая скорость работы(судя по тестам). Проект развивается небольшой группой людей но довольно активно(есть и чат, где отвечают и issues коментят). Сейчас на ней активно пишу и для себя и на РАБоте.
- Не готова к продакшену - до сих пор нет миграций(да, скоро обещают даже ветка есть, но код в ней не покрывает всё что нужно и периодически на миграциях падает, поэтому пришлось форкать себе и допиливать).
Аноним 18/02/19 Пнд 15:33:30 #192 №1350460 
>>1350458
>- Более убогого интерфейса не встречал, глаза вытекают, документация не структурирована нормально.
Фуф бля, я думал это только я заметил, все ее только хвалят. Помимо того что интерфейс и доки уг, так разработчики явно пришли из другого языка, алхимия совершенно не python-wave или как там говорят.
Аноним 18/02/19 Пнд 15:39:54 #193 №1350463 
>>1350456
На чем удобнее делать RESTful api?
Аноним 18/02/19 Пнд 15:56:24 #194 №1350473 
>>1350460
Но многие пользуются, т.к. альтернативы не очень популярны и известны.
Хотя я встречал счастливых людей, которые про алхимию даже не слышали.
Аноним 18/02/19 Пнд 16:24:47 #195 №1350483 
>>1350439
Без прокси как раз в заглушку стучусь -- это видно из того, что ответа просто нет. При использовании прокси функция сразу бросает исключение FloodWaitError и я не понимаю, почему. Ведь я даже код не успел получить для входа. Прокси рабочий, до бот апи достучаться получается. Всё по документации в getting started делаю. На pythonanywhere без прокси получаю 'ConnectionError: Connection to Telegram failed 5 times', а с прокси 'Connection Refused'. Пишут, что на бесплатном акке через их mtproto работать ничего не будет.
Аноним 18/02/19 Пнд 20:42:21 #196 №1350611 
downloadfile-3.bin
Поясните нубу за механику работы с файлами, что там вообще происходит под капотом.

Вот к примеру два способа создать файл:

open('file.txt', 'tw')

и

f = open('file.txt', 'tw')

Во втором случае при попытке открыть его в другой проге будем получать сообщение, что файл уже используется и неплохо бы его сперва f.close(). Это из-за присваивания переменной f? А там разве не копия файла хранится с которой питон работает? Почему ОС тогда ругается? СЛИШКОМ СЛОЖНО!
Аноним 18/02/19 Пнд 21:02:49 #197 №1350621 
Ребят, посмотрите говнокод. Как сделать правильно?

https://repl.it/repls/MildPurePredictions
Аноним 18/02/19 Пнд 21:03:24 #198 №1350622 
>>1350611
Файлы открывай серез with open(.....) as f и не нужно закрывать - само закроет
Аноним 18/02/19 Пнд 22:42:49 #199 №1350677 
>>1350621
Что за хуету ты написал?
Аноним 19/02/19 Втр 20:31:10 #200 №1351026 
>>1350451
Я только вкатываюсь в джанго, какой лучше запилить сайт для начала чтобы научиться. Быстро изучил штмл и сиэсс, про существонвние бутстрапа знаю. Пока пугают только шаблоны и модели. ТАкой вот реквест, какие сайтики начать делать чтобы научиться, какая тематика, мб есть примеры посмотреть. Еще просмотрел видосы и почитал доки на оф сайте, так то вроде все ясно, я бы даже сказал, просто.
Аноним 19/02/19 Втр 20:39:58 #201 №1351029 
>>1351026
Бложик.
Аноним 19/02/19 Втр 21:07:10 #202 №1351039 
>>1351026
Наверни для начала Django by Example, там и проекты есть для общего представления
Аноним 19/02/19 Втр 21:44:16 #203 №1351055 
>>1351039
Насколько актуальна книга к 2019 году? Я полистал вроде 15 год, сильно версия изменилась, сейчас же уже джанго 2,0. Большая разница?
Аноним 19/02/19 Втр 21:49:19 #204 №1351056 
>>1351055
Ага, теперь в model.ForeingKey() надо on_delete= прописывать
Ну и с url немного проще стало (для некоторых)
А остальное то же самое
Аноним 19/02/19 Втр 21:50:20 #205 №1351057 
>>1351055
Там где-то свежая версия для 2+ джанги валялась, ее и гугли. Хоть и старая та же хуйня по-сути
Аноним 19/02/19 Втр 23:03:01 #206 №1351084 
>>1351026
Я как-то хотел выебнуться и сделать что-то типа сайта с заметками ну типа как гугл ноутс. На бутстрап больше времени уходило, чем на всё остальное, и я забил. Потом пока делал тестовое с бложиком много нового узнал, но модели и выборки там совсем ни о чём получаются. А я даже не знаю что можно придумать, чтобы прямо дохуя таблиц было и связей разных, чтобы прямо вот фильтры и вот это всё ебашить. Да и пока из того, что я пытался сделать, пришёл к выводу, что если нужна какая-то сложная выборка, то без манипуляций данными в питоне обойтись может не получиться. А вот на SQL я изъебнулся и запрос написал.
Аноним 20/02/19 Срд 00:16:10 #207 №1351126 
>>1338447
В статус баре же можно.
Аноним 20/02/19 Срд 00:17:38 #208 №1351130 
>>1351084
Инет магазин нормальный с нуля напиши.
Не такой типа:
class Product(..):
..name=
..price=
....

А со всякими изъебствами, размерными сетками для каких-нибудь футболок, цветами разными, конфигураторами, может какими-нибудь конструкторами принтов, фильтрами, объемом и весом посылки, расчетом доставки через апи каких-нибудь деловых линий, заказами, дисконтами, оптовыми заказами для юрлиц с генерацией инвойсов и прочей мути, чатиком с поддержкой и тд и тп
Я уже почти три месяца месяца пишу, и готово только процентов на 75 от силы, это при том что у меня почти 10 лет опыта в кодинге в целом и 4 года в джанге.
Аноним 20/02/19 Срд 00:46:04 #209 №1351144 
>>1351130
> Я уже почти три месяца месяца пишу, и готово только процентов на 75 от силы, это при том что у меня почти 10 лет опыта в кодинге в целом и 4 года в джанге.
Ну вот и зачем тогда ты такое задание начинающему анону даёшь?

Лучше б очередную борду запилил + API добавил туда и плюшки всякие
Аноним 20/02/19 Срд 00:51:37 #210 №1351146 
>>1351144
Ну он хотел чтобы запросов было достаточно дохуя, чтобы каштомные кверисеты писать. А API, а что API?:
def something(request):
..return HttpResponse(serializers.serialize('json', YourModel), content_type='application/json')

проще чем с шаблонами пердолиться даже
Аноним 20/02/19 Срд 02:24:31 #211 №1351165 
>>1351146
> А API, а что API?
Продумать и реализовать. В современных реалиях будет полезным опытом, со всякими ангулярами и прочим жсом.
Аноним 20/02/19 Срд 03:58:06 #212 №1351176 
image.jpeg
image.jpeg
Что-то я совсем в тупике. Пытался перевести граф с картинки в код. Для этого создал два класса: один ребра, другой вершины. Заполнил их как на пикче. Но каждый раз, когда я обращаюсь к edgeIn/edgeOut конкретной вершины, я получаю, что они содержат ВСЕ РЕБРА ГРАФА.

Вопрос к знатокам: как так, лол, получается?
Аноним 20/02/19 Срд 04:04:49 #213 №1351177 
Я, конечно, запилю это дело простой матрицей, но все равно хотелось бы знать, в чем причина обосрамса.
Аноним 20/02/19 Срд 08:01:27 #214 №1351193 
>>1351130
Неплохая, кстати, идея, только вот всякие конфигураторы и конструкторы -- это же про фронт и жс, не?
Аноним 20/02/19 Срд 09:43:29 #215 №1351207 
>>1351193
Да, но цену-то надо на серверной стороне считать, чтобы не выходило что товар стоит -9999 руб просто потому что юзер знает как включить инспектор в хроме
Аноним 20/02/19 Срд 11:15:15 #216 №1351242 
>>1351207
Я понимаю, но прежде чем всё это в бэке реализовывать, надо какой-то фронт прикрутить, не? Много пердолиться придется, я во фронте вообще ноль. И желания нет особо с ним работать, жс не доставляет.
Аноним 20/02/19 Срд 11:25:11 #217 №1351253 
>>1351242
А че там делать, там все просто:
SVG + jquery
https://www.miniusa.com/tools/learning/models-build/build.html#/?trim_code=cooper&partcodes=ZSG,850,1NA,4BD,383

где-то на codepen еще билдер наручных часов клевый находил
Аноним 20/02/19 Срд 12:12:19 #218 №1351267 
>>1351176
Во первых, код с вызовом dgeIn/edgeOut конкретной вершины тоже прикрепляй, во вторых, кусок кода никто тут перепечатывать не будет, на pastebin, а потом сюда с вопросом
Аноним 20/02/19 Срд 13:33:29 #219 №1351301 
>>1351176
Что за цветовая схема?
Аноним 20/02/19 Срд 14:05:46 #220 №1351311 
Вопрос: можно ли изъебнуться и в качестве ключа использовать изменяемый тип? Можно ли захешировать dict и как, если можно?
Сел в лужу, никогда ничего про это не читал и не думал об этом.
Аноним 20/02/19 Срд 15:31:48 #221 №1351353 
Есть одна процедура на мускуле. Процедура делает селект и сразу после него делает инсерт.
Есть один я с питоном, который коннектится к базе на мускуле через mysql.connector и пытается дернуть эту процедуру.
Ну то есть
cursor.execute("call my insert-select procedure with params")
output = cursor.fetchall()
cursor.close()
connection.close()
Селект отрабатывает, инсерт нет. Почему не отрабатывает инсерт, понятно - я не делаю connection.commit.
Пытаюсь вкрутить коммит руками - Commands out of sync; you can't run this command now
Поставил автокоммит - все работает.

Так вот, вопрос - как закоммитить этот говно в базу руками? Автокоммит не хочу.
Аноним 20/02/19 Срд 15:50:41 #222 №1351362 
>>1351311
>Вопрос: можно ли изъебнуться и в качестве ключа использовать изменяемый тип? Можно ли захешировать dict и как, если можно?
Делаешь собственный dict наследуюясь от обычного dict'а, и определяешь у него метод __hash__
Аноним 20/02/19 Срд 15:53:36 #223 №1351364 
2019-02-2014-51-10.jpg
>>1351362
Аноним 20/02/19 Срд 17:25:30 #224 №1351411 
>>1351362
Ну я тоже так подумал. После того, как собес закончился. Sooqua. Алсо, вроде лучше наследоваться от UserDict.
Аноним 20/02/19 Срд 22:08:05 #225 №1351589 
Снимок экрана в 2019-02-20 23-07-07.png
Че он доебался до меня со своей херотой?
Аноним 20/02/19 Срд 22:10:13 #226 №1351592 
>>1351589
Ты как из while True выходить собрался?
Просто файл на подаче закончился, а ты еще что то инпутишь
Аноним 20/02/19 Срд 22:12:03 #227 №1351594 
>>1351592
Ай, бля. Серьезно. Надо тогда счетчик поставить. Спасибо.
Аноним 20/02/19 Срд 23:28:59 #228 №1351650 
>>1351176
>как так, лол, получается?
У тебя у Node в __init__'е есть дефолтные значения edge'й, и это списки. Эти списки создаются один раз, и делается это при создании класса, то есть после выполнения питоном кода на строках 9-13. Так что, после того, хоть ты и сделал Node() несколько, они все ссылаются на одни и те же два списка.
Попробуй ничего не изменяя создавать ноды через Node([], []), всё сразу починится.

Не делай дефолтными аргументами изменяетмые объекты. Если надо, делай arg=None, а в теле функции if arg is None: arg = [].
Аноним 20/02/19 Срд 23:30:01 #229 №1351651 
>>1351242
Спецом для тебя нашел, держи фронтенд:
https://codepen.io/mattamyot/full/aJXRZp

Бонусом можешь опциям сроки доставки в зависимости от наличия и влияния на цену предусмотреть.
Аноним 20/02/19 Срд 23:31:20 #230 №1351654 
>>1351594
>Надо тогда счетчик поставить.
Надо не счётчик ствить, а очки купить и условие читать нормально.
Аноним 21/02/19 Чтв 00:11:14 #231 №1351666 
>>1351650
Охуеть, спасибо мимо другой анон
Аноним 21/02/19 Чтв 00:14:08 #232 №1351667 
>>1351176
>>1351650
>>1351666
Парни, а если не секрет, что это вы делаете такое интересное? По коду нихуя не понял. И какое применение у этой штуки, зачем там граф?
Аноним 21/02/19 Чтв 00:52:19 #233 №1351695 
>>1351667
Я ничего, просто не знал про такое присвоение. Но так то графы приходилось юзать по работе, но на этот случай есть networkX.
Аноним 21/02/19 Чтв 00:58:17 #234 №1351699 
>>1351667
Похоже на вычисление максимального потока в графе.
Аноним 21/02/19 Чтв 03:23:16 #235 №1351734 
>>1351667
Да хуйней страдают, с графами играются
Аноним 21/02/19 Чтв 15:13:48 #236 №1351957 
Тэкс, анон. Чего- то я тут не понимаю.
Вместо того, чтоб удалять уже выводившийся символ я получаю бесконечный цикл.
Расскажи, где я обсераюсь?
Аноним 21/02/19 Чтв 15:14:14 #237 №1351958 
Screenshot271.png
>>1351957
Скрин отвалился.
Аноним 21/02/19 Чтв 15:24:52 #238 №1351964 
>>1351958
У тебя переменная ena не изменяется в цикле, почему он должен из него выходить? и нахуй он там вообще нужен
Аноним 21/02/19 Чтв 16:18:10 #239 №1351991 
изображение.png
Попытался наследовать класс Button и вот такая вот хуита.
Где я ошибся?
Аноним 21/02/19 Чтв 16:31:41 #240 №1352003 
>>1351991
Обращение к методам родительского класса происходит черех метод super.

попробуй Буттон инит заменить на super().__init__
Аноним 21/02/19 Чтв 16:41:34 #241 №1352011 
>>1351958
Ты можешь обращаться к строкам циклом фор.
Как к массивам с элементами символов.

for symbol in stroka:
tvoy govnokod is whlie


Попробуй так.
Аноним 21/02/19 Чтв 17:45:13 #242 №1352068 
Аноны, установил я ваши эти докеры и соснул хуйца.
Написал докер файл, задал питон 3,6 и добавил простенький срипт(print('hello')), добавил cmd - [ "python", "app.py" ].
В результате получаю:
/usr/local/bin/python: can't find '__main__' module in 'app.py'
Делал и с __name__ == '__main__' и без, и с __init__ и как угодно - нихуя, выдаёт эту ошибку.
Пытался запускать в ручном режиме - тоже нихуя.
В какую сторону смотреть?
Гугл не даёт никаких нормальных ответов.
Аноним 21/02/19 Чтв 17:58:08 #243 №1352077 
>>1352068
Попробуй пустой файлик __main__.py создать в той же директории, что и __init__.py
Аноним 21/02/19 Чтв 18:00:01 #244 №1352079 
image.png
>>1352077
Уже
Аноним 21/02/19 Чтв 18:51:27 #245 №1352122 
>>1351958
Во-первых, твой word.replace находит вне лупа. Во-вторых, результат замены (т.е. слово без каких-либо букв) ничему не присваивается, в итоге просто пропадает, а в переменной word остаётся всё то же самое, что и было. В-третьих, как уже сказали, условия цикла у тебя никогда не изменяется, ena как была каким-то числом, равным изначальной длине слова, так и осталась. Советую поменять или взять учебник.
Аноним 21/02/19 Чтв 19:15:01 #246 №1352143 
>>1352068
Запусти dir() посмотри че там у тебя вообще.
Аноним 21/02/19 Чтв 19:40:36 #247 №1352159 
>>1352143
Перепутал местами что / куда копировать и у меня создавали пустые файлы. Я ебанат.
Первый раз докер запускал.
Аноним 21/02/19 Чтв 21:38:53 #248 №1352210 
Анон, вот скажи, код должен быть коротким или наглядным? Меня этот вопрос уже пиздец замучал, каждый раз сомневаюсь и переписываю одно и то же по нескольку раз.
Вот я сейчас пишу конвертер айди стима. Тут среди прочего мне нужно из строки вида STEAM_0:1:<рандомное число> вычленить <рандомное число>. Причем девятый символ может быть как нулем, так и единицей и это важно учесть. Далее в зависимости от девятого символа нужно провести простую арифметическую опрерацию. Так вот, как сделать правильней:
1.
id_ = 'STEAM_0:1:<рандомное число>'
num = int(id_[10:]) 2 + 1 if int(id_[8]) else int(id_[10:]) 2

2.
id_ = 'STEAM_0:1:<рандомное число>'
if 'STEAM_0:0:' in id_:
----num = int(id_.lstrip('STEAM_0:0:'))
----num = 2
elif 'STEAM_0:1:' in id_:
----num = int(id_.lstrip('STEAM_0:1:'))
----num = num
2 + 1

К слову, не предлагайте плз свой вариант написания, потому что вопрос не в этом. Просто считайте, что у вас есть выбор только между двумя этими вариантами. Какой бы вы выбрали?
Аноним 21/02/19 Чтв 21:41:42 #249 №1352215 
>>1352210
Бля, сосака сожрала умножения
Аноним 21/02/19 Чтв 22:15:21 #250 №1352244 
1519107550285.png
Что не так?
Аноним 21/02/19 Чтв 22:41:02 #251 №1352268 
pic1.png
pic2.png
pic3.png
Ребят, помогите. Столкнулся со странным поведением модуля pickle.
Я создаю внутри класса словарь, потом записываю объект класса в файл с помощью pickle. Потом загружаю обратно сохраненный объект (пикча 1). Все норм, такое поведение я ожидаю.

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

Кто-нибудь сталкивался с таким? В гугле ничего не нашел. Это баг или фича? Мб я тупой и что-то неправильно делаю?
Аноним 21/02/19 Чтв 22:41:28 #252 №1352269 
>>1352244
Что не понятно, ты заходишь на какую то парашу с просроченным или самоподписаным сертификатом
Аноним 21/02/19 Чтв 23:00:46 #253 №1352278 
>>1352210
Я бы предпочел первый вариант, тем более
> Flat is better than nested.
Но тут надо смотреть на длину таких выражений. Если она расползается на несколько строк и по сути представляет из себя вывернутое на изнанку условие или цикл, то на хуй, лучше второй вариант.
Аноним 21/02/19 Чтв 23:08:55 #254 №1352284 
>>1352210
Из этих двух - второй.
Аноним 22/02/19 Птн 00:56:13 #255 №1352348 
>>1352210
prefix, _type, val = id_.split(":")
num = val / 0.5 чтобы звёздочки не съелись
if _type == "1":
    num += 1
Аноним 22/02/19 Птн 01:14:47 #256 №1352354 
Screen Shot 2019-02-21 at 23.13.13.png
>>1352268
>Мб я тупой и что-то неправильно делаю?
Словарь твой принадлежит классу, а не объекту этого класса, который ты в файл пиклишь. Когда ты загружаешь свой объект из файла, он так же указывает на словарь класса DC, который в новом скрипте имеет нулевые значение, так как ты ни одного объекта ещё не создал, который в ините прописали бы туда какие-то значение.
Легко увидеть, если перед pickle.load создать какой-то объект этого класса.
Аноним 22/02/19 Птн 13:44:40 #257 №1352527 
Как можно протестировать 2 версии скрипта на то, какой из них жрет меньше памяти и ресурсов проца?
Аноним 22/02/19 Птн 14:26:27 #258 №1352544 
>>1352527
Сначала протестируй одну версию, потом другую, и сравни.
Аноним 22/02/19 Птн 14:52:06 #259 №1352556 
>>1352544
смищно
Аноним 22/02/19 Птн 15:00:40 #260 №1352560 
>>1352556
Писька в рот долбиська
Аноним 22/02/19 Птн 15:39:24 #261 №1352575 
>>1352354
Спасибо что просветил, анон. Получается, что я вообще неправильно понимаю работу классов и объектов. Много раз в объяснениях про ООП классы сравнивали с чертежом для реального объекта. Как могут созданные данные реального объекта принадлежать (храниться там получается) чертежу? Крч буду изучать все это дальше.
Аноним 22/02/19 Птн 16:38:47 #262 №1352612 
>>1352575
Попробуй изучать ООП на примере нормального ООП-языка, а не скриптопараши - путаницы будет гораздо меньше. Можешь даже тупо взять и почитать без практики пару глав про классы из какой-нибудь книжки по джаве.
Аноним 22/02/19 Птн 17:11:46 #263 №1352630 
>>1352612
Охуеть у тебя советы для новичков, не слушайте этого, и уж тем более не тащите в питон джавовский стиль ооп
Аноним 22/02/19 Птн 18:28:36 #264 №1352685 
>>1352630
Обычные, рабочие советы. Алсо, нет никакого "джавовского стиля" ООП, различия между мемберами класса и объекта этого класса везде концептуально одинаковые.

tl;dr: нечего сказать по теме - не разевай пиздюшник.
Аноним 22/02/19 Птн 18:50:35 #265 №1352701 
>>1352685
>различия между мемберами класса и объекта этого класса везде концептуально одинаковые.

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

А речь я веду о стиле программирования, и в питоне и джаве он принципиально разный.
>нечего сказать по теме
Сказал человек, который втирает за джаву в питон треде, в ответ на вопрос по питону.
Аноним 22/02/19 Птн 19:58:28 #266 №1352735 
>>1352701
Потому что в этом другом языке для новичка это сделано гораздо понятнее.

Я не втираю "за джаву". Если ты настолько тупой, что не можешь открыть глаза и прочитать мой изначальный пост, то я не знаю, чем тебе еще помочь.
Аноним 22/02/19 Птн 20:57:47 #267 №1352765 
>>1352735
>Потому что в этом другом языке для новичка
>новичка
>изучи джаву что бы изучить питон
А когда он про лямбды спросит, ты его в кложур-тред отправишь?
Аноним 22/02/19 Птн 22:14:25 #268 №1352802 
>>1352765
Вообще я согласен с тем аноном, почему то лучше понять всю ООПшную срань шарпа который я учил, я смог только когда вкатился на работу н питоне, лол.
Вообщем смотреть на разных языках как оно устроенно полезно.
Аноним 22/02/19 Птн 23:36:56 #269 №1352822 
>>1351353
>Пытаюсь вкрутить коммит руками - Commands out of sync; you can't run this command now
Потому что транзакцию нужно руками же и открывать
cnx.start_transaction перед твоим cursor.execute.
Аноним 22/02/19 Птн 23:47:55 #270 №1352829 
>>1352575
>Как могут созданные данные
Просто почитай про class variable vs instance variable, а также заодно и про class/instance/static methods.
Аноним 23/02/19 Суб 00:07:48 #271 №1352837 
>>1352765
Нет, для этого же есть сикп-тред - туда и отправлю. А то так и будет всю жизнь думать, что "лямбда" - это однострочная функция ;) ;) ;)
Аноним 23/02/19 Суб 13:32:30 #272 №1353031 
>>1352822
Вообще странно, если делать в лоб execute, который ничего не возвращает, а только инсертит, то можно обойтись одним коммитом. Но спасибо.
Аноним 23/02/19 Суб 15:48:53 #273 №1353182 
Какую книгу по питону (на русском) купить?
Посмотрел книги из шапки - одна старая хуйня.
На английком есть свежак, но мне же надо на русике.

Лутц вообще 2011-го блять года, там уже пистон 10 раз поменялся с тех пор.
Аноним 23/02/19 Суб 15:54:34 #274 №1353189 
>>1353182
>пистон
Его еще не закопали, или матанопетушня держит его на плаву?
Аноним 23/02/19 Суб 16:02:04 #275 №1353201 
>>1353189
Хуй знает. Расскажи, плиз, свое уважаемое мнение о будущем питона, мне действительно интересно.
Собрался учить питон для написания диплома
Аноним 23/02/19 Суб 16:06:31 #276 №1353209 
>>1353201
>будущем питона
как язык он говно, но на нем слишком много наговнокодили, поэтому будет плавать, а ты будешь в этом ковыряться
Аноним 23/02/19 Суб 16:08:11 #277 №1353210 
>>1353182
Скачай и читни think python
Аноним 23/02/19 Суб 16:14:04 #278 №1353216 
>>1353210
>на русике
>think python
Аноним 23/02/19 Суб 16:14:42 #279 №1353217 
>>1353209
Что думаешь про эту хуйню с двумя версиями?
Аноним 23/02/19 Суб 16:22:28 #280 №1353223 
15111144667610.png
>>1353217
>>1353201
Нахуя тебе питон, учи сразу го. В питоне-то со второй на третью уже более-менее кое-как почти все перекатились, а в го это все как раз впереди))0
Аноним 23/02/19 Суб 16:30:32 #281 №1353233 
Screenshot1.png
>>1353223
На го достаточно вакансий, да.
Часто даже наблюдается стек пых+го.
А вот на питоне веб-проектов-то нихуя и нет.
Язык вроде топ1 или 2 в мире по популярности, но что блядь вообще на нем пишут - загадка.
Ну ML - это понятно, но 5% рыночка питона.
Гуглишь на hh - или джанго или питон всегда на подсосе в качестве третьего языка в проекте или вообще легасня.
Я тут не питон обсирать пришел, просто хочу выяснить сферу его применения, область, где питон хорош, а не НУ ЭТА ЕПТА БЛЯ СКРИПТЫ ТАМ ВСЕ ТАКОЕ МАШОБ ПИТОН ЗБС
Аноним 23/02/19 Суб 17:13:56 #282 №1353292 
>>1344682
Обычное попиксельное сравнение
Аноним 23/02/19 Суб 17:35:42 #283 №1353318 
>>1347704
Синьер бот-телеграм-апи-хтмл-архитект в треде.
Нет, через бот апи нельзя читать сообщения в чужих каналах, где бот не админ.
Тоже стояла такая задача, решил через обычное апи телеги(не бот).
Аноним 23/02/19 Суб 17:42:04 #284 №1353324 
>>1350245
Зачем тебе вообще нейросететь для неподвижных одинаковых объектов без искажений?
Тут попиксельное сравнение обычное на ура прокатит.
sage[mailto:sage] Аноним 23/02/19 Суб 17:49:18 #285 №1353327 
>>1353233
мне кажется, или ты не уловил шутейки
Аноним 23/02/19 Суб 18:02:06 #286 №1353337 
>>1353327
Сложный прекол, извини, не понял
Аноним 23/02/19 Суб 18:29:02 #287 №1353368 
>>1353233
Помимо разных скриптов - я вот недавно ходил по собеседованиям, во многих местах бэкэнд с хитрой логикой на питоне крутится, полагаю, из-за скорости прототипирования.
Причем, лол, на нынешней работе сейчас джавистов набирают, потому что решили, что делать серьезный продакшон на голом питоне слишком разорительно, то ли программисты косячат, то ли сборщик мусора действительно говно и отжирает любое количество памяти.
мимосисадмин
Аноним 23/02/19 Суб 21:16:57 #288 №1353524 
>>1353216
ты б погуглил сперва, тупиздень, а потом бы пездак свой разевал.
Аноним 23/02/19 Суб 21:30:29 #289 №1353537 
Аноны!
Ни кто не ловил эту шляпу из здешних Trojan:JS/CoinHive.A ???
Я словил было открыто пару ссылок с этого треда и флибуста.
как узнать с какого сайта словил?
Аноним 23/02/19 Суб 23:04:49 #290 №1353601 
>>1353537
Сам разобрался.
я дебик, не обратив внимания перешел на клон флибусты.site на котором был скрипт майнера
Аноним 23/02/19 Суб 23:48:37 #291 №1353633 
Анончик, привет. Ниже будет немножко паста, но я хочу кое-каких советов.
Короче, я совсем наивный. В жизни не программировал, мне 28 лет, у меня не АйТишная работа (которую я, к слову, люблю и менять не собираюсь) и так далее. Я решил учить питон по фану, потому что почему бы и нет - какая разница как задротствовать в свободное время.
В общем, проглотил "Learn Python 3 the Hard Way", лениво пописывая что там автор просил переписывать и выполняя все его заебы. Потом написал пару скриптов для себя, решать кое-какие рабочие вопросы - конечно полный примитив, обычно они решаются банальным калькулятором, бумажкой и справочником списать константы. Ну хуй с ним, вроде весело.
Чего там дальше читать? Где брать задачки? Не, ну я конечно типа ученый в толчке моченый, но дико работающий руками и на всякие курсы по ДАТА САЕНС у меня вызывают скуку. Где брать интересные задачи?
Ну я тут повторюсь, что вкатился чисто по фану, в поисках хобби лучше чем миньки раскрашивать да в иве крабить.
Аноним 23/02/19 Суб 23:53:32 #292 №1353637 
>>1353633
Почитай Think Python
Хорошая, бля, книжка. После нее будешь отстреливать и весь потенциальный функционал питона, и кучу примеров как его использовать,и тд. Есть на русском.
Хардвей говно для пидоров и надроченно только тем, что бесплатно, да и то, только чтобы гнусавый автор потом втюхивал тебе свои сраные видеокурсы и все это под неебаться превозмогательным соусом. Короче из чистой жадности пендосов, а так даже a byte of python прикольнее.

Кодю 15 лет каждый день, ни дня айтишником чистым не работал
Аноним 24/02/19 Вск 00:37:33 #293 №1353658 
Джанганы, у меня картиночки хранятся, нужно их перед тем как выдать отресайзить исходя из параметров в запросе. Использую ImageField джанго, в get_object дёргаю super().get_object, получаю объект картинки, которую хочу посмотреть. Как ей теперь размер изменить? Что-то гуглится только изменение размера при сохранении модели.
Аноним 24/02/19 Вск 00:42:34 #294 №1353663 
>>1353658
Поищи django easythumbnails или django sorl thumbnail
Можно конечно и с PIL’ом поебаться, но был бы повод
Аноним 24/02/19 Вск 00:46:45 #295 №1353666 
>>1353633
>где брать задачи
>дико работающий руками
Прозреваю в тебе биохимика какого-нибудь. Захреначь самописный лабораторный журнал, чтобы еще отчеты генерировал.
Аноним 24/02/19 Вск 10:47:04 #296 №1353736 
>>1353663
Мне не совсем thumbnail нужно делать, мне просто нужно ресайз делать в свободном виде. Ну и вопрос был ещё в том, что я во вью в get_object получаю объект типа ImageFile, вот, допустим, я с помощью какого-нибудь пакета изображение из этого объекта обработаю как мне надо, а дальше что? Просто изображение возвращать?
Аноним 24/02/19 Вск 11:36:49 #297 №1353775 
Это вообще нормально, что все книги по питону на русском такое ебаное старье?
Аноним 24/02/19 Вск 11:39:05 #298 №1353776 
>>1353775
А какая разница? По C++ вон вообще по-сути "Искусство программирования" Кнута от 1962 и до сих пор актуально шо пездец.
А если ты про мифические сложности переучивания с питона2 на питон3 то переучишься минут за 15, вместо print 'hui' надо будет print('hui') ебашить ото и 80% разницы
Аноним 24/02/19 Вск 11:53:46 #299 №1353791 
>>1353776
У крестов уже несколько стандартов поменялось.
Плюс каждый год выходят новые редакции книг.
А в питоне половина книг дают версию 3.0 как охуительный прорыв. Когда уже 3.7 есть.
Аноним 24/02/19 Вск 11:56:30 #300 №1353794 
>>1353776
Потому что как минимум появились async/await выражения. Ну и куча мелких нововведений типо f строк.
Аноним 24/02/19 Вск 12:00:39 #301 №1353796 
>>1353791
Ну варианта два: или учи английский и покупай (а иначе их и не достать - пиратятся чет тухло последнее время) только книги на английском, или читай просто пиздатые киниги похуй какого года, просто потому что для твоих ишак-скриптов всякие плюсы последних версий - до пизды припарка. Особенно если мовы ты не знаешь.
Аноним 24/02/19 Вск 13:24:31 #302 №1353849 
>>1353775
Это вообще нормально, что типа прогеры не знают английского?
А вообще какая разница. Ниже про Кнута от 1962 уже писали. Но имей ввиду - пока весь мир наслаждается свежими изданиями с исправленными ошибками или дополненным материалом, ты обмазываешься двойным сетом ошибок - и автора, и переводчиков. Так что лучше учи английский, благо технические тексты читаются даже полными школярами.
Аноним 25/02/19 Пнд 19:25:48 #303 №1355041 
Здравствуйте, мне для шараги нужно взять три набора данных с задачей регрессии из репозитория UCI, с помощью Keras, scikit-learn и XGBoost обучить по ним разные виды нейронных сетей, обучить модели на основе SVM, случайных лесов, градиентного бустинга и линейной регрессии. После этого ускорить это дело на GPU и показать в шараге. Я могу тяп ляп сделать код, копипастой из книжек, не понимая того какие параметры для моделей ставить и не понимая как для нейронных сетей слои правильно архитектуру сети подобрать.

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

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

Сколько денег такое может стоить?
Аноним 26/02/19 Втр 00:46:27 #304 №1355345 
Помогите нубу плиз. Мне нужно скачать с сайта около 1 млн .json файлов. Посоветуйте, что почитать по это теме, чтобы сделать все КРАСИВО.
Аноним 26/02/19 Втр 00:58:13 #305 №1355357 
>>1355345
Скачиваешь по n-штук, сохраняешь, скачиваешь следующие n-штук, обмазываешься тредами, iohttp
Аноним 26/02/19 Втр 11:24:29 #306 №1355531 
В питоне есть многопоточность?
Аноним 26/02/19 Втр 12:15:36 #307 №1355558 
Немного общий вопрос, но все же.
Есть ли у кого опыт работы программистом-стажером, имеет ли это смысл?


Суть такова, что сейчас на ХХ есть одна манящая вакансия, однако компания, которая её разместила в это же время развесила по моему ВУЗу из которого я кстати хочу ливнуть(зачем я об этом пишу?) листовки на обучение языку(естественно за щекели).Вот я и думаю, что даже если я к ним на собеседование приду, будет что-то вроде : "Ой вы конечно хороший кандидат, но немного знаний вам не хватает, мы тут кстати 4-ёх месячные курсы сейчас проводим всего за 4200/мес, после них мы вас обязательно возьмём на работу, честно честно"
Аноним 26/02/19 Втр 12:19:03 #308 №1355559 
>>1355558
Типа интерн? Скорее всего в этом случае просто продают курсы таким образом, но если там на собеседованиях реальные програмеры присутствуют, то если покажешь что ты нормальный пацан и на питоне говорить можешь, то могут и взять, но скорее всего там эта позиция даже не открыта
Аноним 26/02/19 Втр 12:35:32 #309 №1355569 
>>1355041
Страдаешь хуйней.
Если тебе нужен нормальный код и хороший % обучаемости - не обязательно быть дата саентистом что бы это сделать. Хватит пары базовых статей/мануалов и опыта в питоне.
Ну а если отвечать на твой вопрос - дорого будет стоить решение от реального спеца(но оно тебе и нахуй не нужно). Я думаю 1.5-2к вечнозелёных, не меньше.
Обычно ищут на upwork каком или если русня - fl.ru.
Но можешь и тут анонам предложить работу, думаю кто-то да ответит.
Аноним 26/02/19 Втр 14:28:44 #310 №1355662 
>>1355569
Нет, не нужно выжимать максимальный процент обучаемости. И код не нужен идеальный.

Нужно чтобы модели на взгляд были не совсем опущенскими. Чтобы минимальная доля обоснованности была в выбранных параметрах, количествах слоев. Чтобы в шарагу сдать и не предъявили, что я дичь втираю.
Аноним 26/02/19 Втр 14:34:57 #311 №1355666 
>>1355662
Лол, ну удачи.
Аноним 26/02/19 Втр 14:37:13 #312 №1355667 
>>1355569
То есть в шараге преподы старые, никаких Keras'ов не знают. Но зато они 100500 лет дрочили матан, алгем, мат. статистику. В 90ых-начале 00ых прочитали книги с формулами про нейронные сети, книги про методы машинного обучения. Поэтому могут спросить за количество слоев, за тип нейронной сети. Могут спросить за параметры обучения методов машинного обучения.

Я плохо знаю математику, поэтому не могу пояснить почему я выбрал такое большое количество слоев, просто напихал 11 Sequential слоев по 400 нейронов. Понятия не имею как прикрутить сюда реккурентную сеть GRNN, FITNET, CFNN, я только умею Sequential делать. Методы машинного обучения применил дефолтные, параметры вообще не трогал.

А я хочу чтобы кто-то мне помог причесать это дело, чтобы шарага не обоссала меня. То есть нет ориентировки на настоящий топовый результат профессионала, которые все оптимизирует до идеала. Надо лишь причесать так, чтобы в шарагу зашло.
Аноним 26/02/19 Втр 14:42:05 #313 №1355674 
Поделитесь нормальным гайдом про то как прилепить vue.js к джанго. Всё, что нашел, либо протухло и нихуя не работает потому что версии поменялись, либо нужно запускать помимо джанго еще сервер на ноджс или вуй прикручивается из интернетов. Третий день ебусь уже с какими-то вебпаками и бобылями и нихуя не выходит.
Аноним 26/02/19 Втр 14:47:31 #314 №1355680 
>>1355667
Ебаны в рот.
Берёшь либу scikit-learn, берёшь книгу по ней - Введение в машинное обучение с помощью Пайтон, А.Мюллер и С.Гвидо.
Читаешь и выполняешь примеры все!
Там расписаны все методы и большая часть параметров. Интересующие параметры гуглишь и играешься с ними, записываешь свои изыскания. Всё нахуй. Я тебе секрет раскрою - % тоже будет важен, как результат работы твоей программы и ты по нему будешь ориентироваться какие параметры выставлять и чому.
Всё, или делай сам/проси анона тут, или иди нахуй на апворк/фл.сру, потому что ты даже не пытаешься. У тебя лапки и всё. Тьфу на тебя.
Аноним 26/02/19 Втр 14:48:45 #315 №1355683 
>>1355674
Рест АПИ поднимай на джанге/фласке/фалконе/aiohttp/tornado/аллахе, а как к ресту прикрутить эту парашу на ЖСе - спрашивай в ЖС-трэде.
Аноним 26/02/19 Втр 14:54:25 #316 №1355690 
>>1355683
Не, ты не понял. Вопрос не в том как из вуя запросы делать к джанго-приложению, вопрос как вообще всё это говно запустить при этом без использования вуя из интернетов и без какой-то левой запущенной в фоне хуйни на ноде. Проблема именно в том, что я даже хеллоуворлд запустить не могу, потому что там какая-то куча ебучих билдеров для этой хуйни, которую надо обмазать конфигами, по гайдам нихуя, естественно, не работает, а к джанго приворачивается через webpack-loader уже то, что высрет этот вебпак.
Аноним 26/02/19 Втр 15:38:27 #317 №1355725 
>>1355680
Понял, принял, спасибо, анон
Аноним 26/02/19 Втр 15:40:33 #318 №1355729 
>>1355690
К ЖСерам иди, ты какую-то ЖСо-хуйню несёшь
Аноним 26/02/19 Втр 16:24:05 #319 №1355753 
>>1355674
Рест апи поднимаешь и пиздец. А чем ты в него ломиться будешь похуй - джанго выдает/принимает по такому-то адресу так-то структурированный json а дальше че хочешь с ним то и делай
Никаких нодежиси и прочей дури для этого не нужно
Аноним 26/02/19 Втр 16:26:40 #320 №1355754 
>>1355753
Да ну а как мне вуй-то вкорячить в шаблон?
Аноним 26/02/19 Втр 16:31:29 #321 №1355756 
>>1355754
<script src=oguenni_vue_script></>
Аноним 26/02/19 Втр 16:34:18 #322 №1355758 
>>1355756
А там импорты-хуимпорты, тебя браузер пошлет на хер.
Аноним 26/02/19 Втр 16:44:13 #323 №1355764 
>>1355754
Ты как-то неправильно фронт хочешь затулить, это при том что я толком и сам не понимаю как оно должно организовываться.
Обычно идея такая - подымаешь ноду в качестве сервака для фронтенда и на ней крутишь реакт/вуй/шот еще, а уже они ломятся в джанго которое у тебя где-то глубоко в AWS / heroku на антресольку запихано.
Чтобы пихали реакт или ангуляр прям в шаблоны джанго - я такого не слышал даже
Аноним 26/02/19 Втр 17:08:32 #324 №1355784 
>>1355764
Нихуя себе, а где про это почитать? Я гуглить пытался как фронт устроен, но там больше про всю эту ссанину, а не про то как оно работает на сервере. То есть если я хочу фронт на js, то шаблоны надо писать для js-фреймворка, а джанго чисто на rest и шаблоны джанговские вообще не нужны?
Аноним 26/02/19 Втр 17:57:57 #325 №1355821 
>>1355764
>>1355784
Что вы тут рассказываете, создаете в вашем проекте еще одну приложуху (собсно для фронта с реактами), делаете там БАЗОВЫЙ (минимальный) набор темплейтов (по сути голых), пишите для них вьюхи, в шаблоны вставляете ваш скрипт, который дальше уже может даже роутить сам.
Плюсы: в целом разработка проще, можно использовать джанговскую аутентификацию, кешировать страницы, у нас 1 сервер, не надо еще и НОДУ поднимать (кто интересно ее будет поднимать, джангисты или реактовцы?), всегда можно расширить приложение статикой.
Минусы: Если приложения вот прямо выстрелит, 300кк человек в секунду, то вы сами захотите запихнуть фронт на отдельный сервер (а еще отдельный сервер для базы данных и отдельный для статики).
Аноним 26/02/19 Втр 18:08:38 #326 №1355830 
>>1355821
> в шаблоны вставляете ваш скрипт
Как? Всё, что я нашел -- обмазаться вебпаком и бобылём, высер вебпака рендерить будет django webpack loader. Как без этой хуйни нормально вставить жс, если там всякие импорты и прочая срань?
Аноним 26/02/19 Втр 18:48:12 #327 №1355841 
>>1355830
https://www.valentinog.com/blog/tutorial-api-django-rest-react/
Аноним 26/02/19 Втр 18:49:23 #328 №1355842 
>>1355830
СОбрал скрипт твой в 1 файл любым тулзом гугол кложур и вставил
Аноним 26/02/19 Втр 23:56:12 #329 №1356014 
Аноны, вот хочу я сделать админку для веб-приложения(что б потом юзать её дальше в своих приложениях).
Чем руководствоваться? Какой принцип создания админок как в джанге/фласке и прочих?
Я для себя примерно такое накидал:
1. Пользователь подключает к своему веб-приложению админку, задавая урл для перехода и параметры для подключения к БД.
2. Я подключаюсь к существующей БД через свою ОРМ и поднимаю веб-морду на заданном урле со списком моделей и списком данных записанных в БД.
3. Добавляю всякие функции типа создание/удаление/изменение имеющегося.
Всё так или упустил что?

Аноним 27/02/19 Срд 09:43:32 #330 №1356129 
>>1356014
Ты хочешь какую-то дичь, если честно, пытаешься впихнуть невпихуемое. Ощущение будто ты дико, адово угорел с самой идеи ORM, но не вполне понял что это не волшебная палочка, а просто дрист чтобы по сто раз не писать "FROM table SELECT * WHERE field1=......."
Подскажу что знаю, и почему на мой взгляд это не сработает.

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

По джанго:
Админку джанго делает само, в зависимости от прописанных моделей.
Создавать модельки по существующей базе ты конечно можешь, при чем есть вариант прям из бд их брать: https://docs.djangoproject.com/en/2.2/ref/django-admin/#inspectdb Какие-то каштомные штуки (ну например хранить в каком-нибудь поле словарь типа "ключ: значение" ты мастеришь уже велосипедами сам. Как и логику обработки форм, например есть базовая модель джаго юзера и тебе надо прикрутить к ней поле "телефон" - ты сначала через OneToOne-relation делаешь модель Profile, прикрученную к этому конкретному юзеру, назначаешь пишешь две формы типа:
class UserEditForm(form.Modelform):
..class Meta:
....model = User
.......fields = '__all__'

class ProfileEditForm(form.Modelform):
..class Meta:
....model = Profile
......fields = ['phone',]

в шаблоне выводишь их например
<form ....
{{ profileform.as_p }}
{{ userform.as_p }}
{% csrf_token %}
<input type='submit'>
</form>

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

Как итог - то же самое что и с фласком. Чтобы эта чудо-универсальная админка работала нужно будет перенести всю логику обработки и хранения данных в джанго и так для каждого конкретного сайта.

Ну и к слову, как давно ты видел сайты без админики? Я в последний раз видел чтобы кто-то контент на своем сайте-визитке правил ручками через phpmyadmin году эдак в 2007
Аноним 27/02/19 Срд 09:48:10 #331 №1356132 
>>1356014
Сорян, кажись я читнул твой вопрос жопой, а потом спросонья как-то еще и как-то снова жопой интерпретировал.

В джанго админку писать это по-сути две строчки
admin.py
from .models import Hui
admin.site.register(Hui)

Далее можешь ее каштомизировать, скрывать поля, добавлять какие-то нетривиальные методы и тд.
Нет смысла писать универсальную админку, потому что функционал уже и так встроен, а две+ строчки ты в каждом своем приложении и так нахлобучить не заебешься

Фо фласке админка пишется так же точно как и фронтэнд, только скрывается ебатней с сессией/регистрацией/юзером/паролем и тд.
Аноним 27/02/19 Срд 10:14:10 #332 №1356141 
>>1356132
Ох, антош, спасибо конечно, но немного мимо.
Я видимо плохо пояснил, но:
1. Я работал с Джанго-админкой и она ок, да. Наверное ещё фласко-админку накачу и потрогаю
2. Я не хочу делать админку для фласка/джанги, я хочу сделать свою админку под веб-приложение написанное на другом веб-фреймворке, в котором админки нет. Поэтому я предположил, что общие принципы построения админок везде схожи и написал про Джанго/фласк и орм.
Так же написал примерные этапы выполнения/работы админки и попросил анона высказать свое мнение, ибо может я забыл что, т.к. не нашел инфы о том как "сделать свою админку в <фреймворкнейм>. Возможно плохо искал.
Аноним 27/02/19 Срд 13:45:22 #333 №1356205 
image.png
10 минут сижу и пытаюсь понять, почему в данном примере отсутствует деление на два там на картиночке массив из четырех значений, но ведь для крупных массивов этот алгоритм не будет рабоать. Объясните мне, пожалуйста. Это сделано специально, чтобы запутать? Эта книга - просто мем grokking algorithms? Или я тупой?
Аноним 27/02/19 Срд 13:59:38 #334 №1356219 
Что делать, если у меня несколько функции используют одну переменную, определенную внутри функции main()? Каждый раз передавать ее в качестве аргумента в каждую функцию или определить ее за пределами функции main()?
Аноним 27/02/19 Срд 14:18:50 #335 №1356227 
>>1356219
Или передвавай(если только это не константа и не может быть определена вне всех функций) или закидывай всё в класс ну и там уже селфы-хуелфы.
Аноним 27/02/19 Срд 14:45:14 #336 №1356233 
>>1356227
Понял, спс
Аноним 27/02/19 Срд 15:14:28 #337 №1356242 
>>1356205
Забыли деление
Аноним 28/02/19 Чтв 10:27:10 #338 №1356576 
Существует ли сервис где я мог бы проверить свое дохуя асинхронное рест апи на большое количество запросов?
Типа деплою прожку аки как на хероку, и там выбираю например 12 миллионов запросов к апи. Он их автоматом генерирует и говорит всякую статистику типа среднее время ответа и так далее.
Если нету. Палю идею для стартапа так скозатъ.
Аноним 28/02/19 Чтв 10:28:48 #339 №1356577 
>>1356576
Ну вроде как есть, но наверное это не совсем то, чего бы ты хотел. Называется просто тесты. Обмазываешься ими и че хочешь то и делай с полученной инфой.
Аноним 28/02/19 Чтв 10:29:27 #340 №1356578 
image.png
>>1342469
Пик.
Аноним 28/02/19 Чтв 10:31:13 #341 №1356579 
>>1356577
Как я на своем некроноуте обмазывать то буду?
Аноним 28/02/19 Чтв 10:37:32 #342 №1356581 
>>1356579
Я ебу что ли? Придумал кому вопрос про свой ноут задавать.
Купи на диджитал оушене на месяцок vps и врубай на всю мощь и тесты, и приложуху.
Аноним 28/02/19 Чтв 10:43:39 #343 №1356582 
image.png
>>1356581
Аноним 28/02/19 Чтв 10:49:34 #344 №1356583 
>>1356582
я пару недель назад регал новый акк мне 100 баксов дали на счет на первые два месяца (потом отберут) и после того как я 5 бачей туда все ж засунул.
Короче если акция еще работает тебе даже для суперблатного дудосера своего рест апи мощей сто пудов хватило бы.
Аноним 28/02/19 Чтв 13:56:59 #345 №1356637 
>>1356576
> taurus
Неплохая штука для нагрузочного тестирования.
Аноним 28/02/19 Чтв 17:07:27 #346 №1356695 
Есть статья https://habr.com/ru/post/196980/
посвященная Pandas и языку Python

там есть такая строчка
country = [u'Украина',u'РФ',u'Беларусь',u'РФ',u'РФ']

Скажите, пожалуйста, что такое u?
Аноним 28/02/19 Чтв 17:30:54 #347 №1356699 
>>1356695
Юникодовская строка.
Аноним 28/02/19 Чтв 17:36:33 #348 №1356703 
>>1356695
Вот это попробуй почитать, мне лучше зашло.
https://pythonworld.ru/obrabotka-dannyx/pandas-cookbook-0-ipython.html
Аноним 28/02/19 Чтв 18:42:42 #349 №1356736 
>>1353324
И что со скоростью вычислений? Сравнивать по пикселям 52 карты, и так ещё повторять для каждой - это же долго будет, или я не прав?
Аноним 28/02/19 Чтв 20:00:44 #350 №1356803 
>>1332788 (OP)
Планирую искать работу на питоне в ДС, так как внезапно появилось жилье не так далеко от ТТК. Ранее работал совершенно в другой сфере, но в свободное время писал разные приложения, сайты для себя и знакомых. Вот встал вопрос указывать ли прошлое место работы и стоит ли задеплоить несколько проектов вставив ссылку в резюме? Кто нибудь полезет их смотреть?
Аноним 28/02/19 Чтв 20:12:54 #351 №1356825 
>>1356803
> Ранее работал совершенно в другой сфере
> указывать ли прошлое место работы
Зойчем? Не релевантный опыт ведь.
> писал разные приложения, сайты
Как freelance указывай этот период, а в скобках кратко напиши список приложений которые создал.
Насчёт деплоить или нет - хз, но ссылку на НОРМАЛЬНЫЙ гитхаб с примерами кода дать стоит.
Но если ты как фуллстек хочешь идти - задеплой пару веб-приложений что б показать как ты на хтмл/цсс/жс программируешь
Аноним 28/02/19 Чтв 20:18:43 #352 №1356836 
>>1356825
>Зойчем? Не релевантный опыт ведь.
Ну хз, один хрен потом узнают.

Аноним 28/02/19 Чтв 20:33:52 #353 №1356858 
>>1356825
>Зойчем? Не релевантный опыт ведь.
И правильно, пусть думают, что он x лет на шее мамки сидел.
>>1356836
Подумай, у кого ты просишь совета
Аноним 28/02/19 Чтв 21:11:53 #354 №1356889 
Питонисты, вы не считаете свои инструменты неудобными? Понятно, что ко всему привыкнуть можно. Но вот maven/gradle в джаве или cargo в расте просто на голову выше. Единственный более-менее вменяемый инструмент - это pipenv, но он пока слабо распространён.
Аноним 28/02/19 Чтв 21:14:24 #355 №1356892 
>>1356889
Ну ты рофельник, ну затейник
Аноним 28/02/19 Чтв 21:23:06 #356 №1356900 
>>1356892
Не понял, объясни
Аноним 28/02/19 Чтв 21:34:48 #357 №1356912 
>>1356889
Да, тулинг в питоне - говно.
Аноним 28/02/19 Чтв 22:33:09 #358 №1356938 
>>1356836
Ты в резюме должен написать свой релевантный опыт. То что ты 5 лет картоху жарил в маке - никого не ебет, когда на собесе спросят про то, чем ты занимался после универа n-лет, тогда про это и можешь рассказать, а до этого - не еби ХРке головы
>>1356858
> Подумай, у кого ты просишь совета
И у кого он просит совета, на твой взгляд?
Ты думаешь одни вкатывальщики/диваны сидят тут?

Я искал работу не имея релевантного коммерческого опыта и имея пробел в 1.5 года после учебы. Ещё 8 месяцев было фриланса, и только в самой зассаной конторе меня спросили про пустые 1.5 года(я честно рассказал, где работал). В норм фирмах будут гонять по теории и опыту на реальных проектах, всё.
Аноним 28/02/19 Чтв 23:07:56 #359 №1356964 
>>1356938
> не еби ХРке головы
Жун 28 лет
Опыт работы 0 лет

Тут то твое резюме и отправиться в корзину, какое еще собеседование
Аноним 28/02/19 Чтв 23:14:52 #360 №1356970 
>>1356964
Ну так от того что ты напишешь о жарке картохи - нихуя не поменяется.
Был у меня на работе коллега, который в 30 пришел ждуном из рекламы(гугол/Яндекс настраивал на сайтах). И ничего, норм, правда фирма говно, но она придаст ему ускорения.
Ты не ной и не выебуйся, а двигай жопой и придумывай себе фриланс на последние года 2-3 и затирай историю о том, как шел к цели. Регайся на линкедине и хр сами будут писать, как расширишь круг "друзей".
Аноним 28/02/19 Чтв 23:48:26 #361 №1356985 
>>1356938
Ну картоху я не жарил, иначе бы не смог купить жилье. Попробую указать все как есть, если не фортанет не сильно расстроюсь.
Аноним 01/03/19 Птн 00:00:34 #362 №1356990 
>>1356985
> Ну картоху я не жарил
Молодец, я просто привёл пример не релевантного опыта, не более.
> смог купить жилье
Нахуй тебе то ойти если ты успешен?
Аноним 01/03/19 Птн 04:18:04 #363 №1357033 
>>1356889
> pipenv
Хуйня без задач. Сначала рейц её высрал, всё ахали как же пиздато, прошёл год и теперь все также ахают как же хуёво. Сука, сразу сказал, что бесполезное говно. Просто в пифоне так повелось не знаю, наверное из-за дибилов книгописателей, что большинство высирает свой код в виде пачки питоновских файлов без инструкций по установке. Казалось бы, сделали тебе setup.py → setup.cfg → pyproject.toml → что там сейчас в poetry. Описывай зависимости, делай энтрипоинты, кастомизируй экстрасами! Нет, не хочу! Хочу жрать говно requirements.txt! И это питонисты?! Мудачьё! за 7 лет в пифоне только два раза была ситуация, когда сломалась зависимость зависимости, это якобы то, что решает pipenv... это смех
Здоровому пифонисту нужен только pyenv ну может ещё poetry, не дошли до него руки ещё. А вообще, намечается положительный сдвиг в этом говне: отказ от setuptools, distutils. Вопрос лишь в том, как быстро это случится.
Аноним 01/03/19 Птн 10:42:13 #364 №1357089 
>>1357033
> requirements.txt, setup.py
В чем проблема этой хуйни?
Почитал за poetry - прикольная штука.
Мимодругойанон
sage[mailto:sage] Аноним 01/03/19 Птн 13:04:53 #365 №1357160 
>>1352735
сука
sage[mailto:sage] Аноним 01/03/19 Птн 13:06:04 #366 №1357161 
>>1352765
не корми суку
Аноним 01/03/19 Птн 15:17:13 #367 №1357203 
Почему джанго не поднимает исключение, если я пытаюсь добавить в поле (primary_key=True) значение, которое уже там есть? Он просто пропускает его. Есть ли какая-то возможность отлавливать такие случаи, кроме как каждый раз отдельно обращаться к дб и проверять есть ли так такое значение?
Аноним 01/03/19 Птн 15:31:22 #368 №1357213 
>>1357203
А, все, понял, при .save() он сам понимает, когда надо сделать insert, а когда update. Вот он умный какой блин
Аноним 01/03/19 Птн 18:51:37 #369 №1357306 
>>1352701
>А речь я веду о стиле программирования, и в питоне и джаве он принципиально разный.
Кстати вот как раскусить стиль питона? Я сам джавист, использую питон для каких-то своих тулзов, постоянно ловлю себя на мысли, что пишу в джавастиле и питонист так не пишет. Пытаюсь делать меньше абстракций, тогда получается что-то в процедурном стиле как в сишке.
Конечно, для тулзов-то ладно, и так сойдёт. Но если взяться за что-то посерьёзнее, то выйдет какаха.
Аноним 01/03/19 Птн 19:16:11 #370 №1357322 
>>1357306
ПРОСТО без задней мысли берешь и пердолишь код так, чтобы он был проще, а не сложнее.
Если классы помогут сделать код более лаконичным - используй их, если нет - пусть будет на функциях.
sage[mailto:sage] Аноним 01/03/19 Птн 20:30:33 #371 №1357368 
>>1352837
А что такое блямба, редикс?
Аноним 02/03/19 Суб 03:54:24 #372 №1357543 
Сам не питонист, можно ли программу на питоне упаковать в бинарник, который можно запустить в окружении без питона? Нужно в сloud функции на ноде дёрнуть питон библиотеку (youtube-dl), в окружении питона нет и поставить нельзя. Пробовал аналоги библиотеки, написаннные на чистом js - работают в 10-15 раз медленнее.
Аноним 02/03/19 Суб 09:24:32 #373 №1357600 
>>1357543
Есть cxfreeze, например. Он может по-моему даже в один файлик всё упаковать. Правда, я его для винды использовал, про остальные не знаю. Только там надо будет руками написать список модулей, которые реально используются, иначе он тебе накидает столько, что хеллоуворлд будет жирнее твоей мамки.
Аноним 02/03/19 Суб 16:30:55 #374 №1357775 
заебало уже, хули 2 питон треда, до коле?

Аноны, как сделать плагин для джанго? Едея есть, но как сделать что бы можно было как любое другое расширение подрубить в настройках проекта?
Аноним 02/03/19 Суб 16:58:42 #375 №1357788 
>>1357089
> В чем проблема этой хуйни?
Прикола никакого. Разные способы описать зависимости и процесс установки приложения в случае setup.py.
Аноним 02/03/19 Суб 17:00:02 #376 №1357789 
>>1357543
>>1357600
pyinstaller
Аноним 02/03/19 Суб 17:59:31 #377 №1357825 
>>1357788
Бля, проблема, а не прикол... проблема requirements.txt в том, что ты не описываешь как устанавливать твоё приложение. Это не проблема если у тебя один py файл, но если использовать расширения на си например, то необходим шаг по их сборке. Проблема setup.py в том, что если у меня не си, а хуй с горы, то встроить кастомный пайплайн сборки в setuptools адово. У нас на работе сделан свой extension для сборки cmake-ом и я не понимаю ни строчки в нём (образно). Но, как я выше писал, надеюсь на улучшение ситуации, благо пеп уже есть.
Аноним 04/03/19 Пнд 01:03:42 #378 №1358760 
>>1357825
Понял, довольно специфические задачи решает.
Аноним 04/03/19 Пнд 12:24:44 #379 №1358923 
Сап питонач! Хочу запилить свой сайтик с просмотром аним, фильмов и сериалов и возник вопрос. Где хранить такой объем данных? Как интегрировать плеер, какие есть крутые, м? Чтобы субтитры были итд
Аноним 04/03/19 Пнд 12:46:31 #380 №1358930 
>>1358923
Разве не nginx будет раздавать видосы, а тебе нужно только плеер встроить, который ссылки должен подхватывать?
мимо
Аноним 04/03/19 Пнд 13:26:54 #381 №1358952 
>>1358923
Хранить на очевидной файлопомойке(есть специальные серваки, со слабыми процессором и большим объемом оперативы и хорошим ссд).
Раздачу можно настроить через nginx, как выше писали уже.
По плееру хз - гугли, думаю всё просто будет.
Аноним 04/03/19 Пнд 13:54:16 #382 №1358960 
>>1358923
Купи Flussonic
Аноним 04/03/19 Пнд 14:28:02 #383 №1358981 
>>1358930
а как это все к nginx прикрутить? Ни разу не работал с этим
Аноним 04/03/19 Пнд 14:30:36 #384 №1358983 
>>1358981
Нашел примеры, отбой
спасибо анончики :3
Аноним 04/03/19 Пнд 15:48:28 #385 №1359015 
А онлайн кинотеатр/мангаридер лучше писать на фласке или на джанго? Может есть фреймы получше?
Аноним 04/03/19 Пнд 16:33:11 #386 №1359033 
>>1359015
> Может есть фреймы получше?
Falcon/aiohttp

> А онлайн кинотеатр/мангаридер лучше писать на фласке или на джанго?
Смотря какая структура у тебя будет. Если монолит - лучше джангу, там и готово почти всё уже, бери подключай только.
Если микросервисы/ещё что - то лучше что-то из вышеперечисленного, но и туда джангу можно запихнуть, хули нет.
Вопрос про фреймворк можно бесконечно обсуждать. Пока у тебя нет какой-то специфической задачи и/или архитектуры - нехуй думать, бери любой популярный и пили.
Аноним 04/03/19 Пнд 16:56:37 #387 №1359040 
>>1359033
Еще такой вопрос. Могу ли я сделать сайтик на джанго, а api для него на фласк и реакте написать?
Аноним 04/03/19 Пнд 17:06:14 #388 №1359045 
>>1359040
фласк рест*
Аноним 05/03/19 Втр 01:08:34 #389 №1359350 
>>1356736
Не прав, да. Попиксельное сравнение прерывается по первому несовпадению.
Аноним 05/03/19 Втр 09:20:29 #390 №1359400 
Привет, Аноны.
Тут недавно в треде поднимался вопрос о знании базового курса информатики для изучения языка. Что вообще необходимо знать из школьного курса (может даже из университетсткого)? Реально ли обойтись без этого?

В силу обстоятельств, в школе все умудрился просрать, а в универе информатики просто нет
Аноним 05/03/19 Втр 10:42:39 #391 №1359426 
>>1359400
Где-то затерялась ссылка на фришный курс по CS от амуриканского универа - CS50, в принципе он даст базовые знания по нужным областям.
Если времени много и хочешь копнуть чуть глубже - серия книг Таненбаума(там и сети и железо и ОС), на сколько я помнил там 3 книги, но они довольно объемны, хоть и читаются очень легко.
Прочел недавно "Теоретический минимум по Computer Science" - совсем короткая книга, но полная, можешь и её навернуть за 2-3 вечера.
Аноним 05/03/19 Втр 10:51:40 #392 №1359431 
>>1359426
Огромное спасибо!
Аноним 05/03/19 Втр 11:59:29 #393 №1359477 
>>1359400
А, ну и:
> Реально ли обойтись без этого?
Всё реально, даже без инглиша погромистом быть, но лучше не надо.
Аноним 05/03/19 Втр 13:15:27 #394 №1359507 
>>1359426
>Если времени много и хочешь копнуть чуть глубже - серия книг Таненбаума(там и сети и железо и ОС), на сколько я помнил там 3 книги, но они довольно объемны, хоть и читаются очень легко.

>Тут недавно в треде поднимался вопрос о знании базового курса информатики для изучения языка

Лолбля, таненбаума нужно купить, когда ты понимаешь, что хочешь понять, как все работает под капотом, для ждуна/мидла это вовсе не обязательно, т.к. все спрятано настолько глубоко, что они никогда это не увидят
Аноним 05/03/19 Втр 13:35:23 #395 №1359523 
>>1359507
ты не понимаешь и хочешь понять
фикс
Аноним 05/03/19 Втр 13:43:09 #396 №1359531 
>>1359507
Ничего плохого в глубоких знаниях для джуна/мидла нет, а иначе можно так и остаться на таком уровне. Так же как ничего очень сложного не рассказывается в этих книгах(по крайней мере про сети и ОС точно, ибо их прочел).
А чего-то более годного я не знаю. Может видео-курсы какие есть еще,.

Антош, если есть что добавить - пиши, а не лолкай.
Аноним 05/03/19 Втр 15:45:23 #397 №1359590 
>>1359531
За время прочтения осей и сетей можно выучить пистон, джангу, скуль и еще много чего, лучше это делать потом, когда поймешь, что тебе чего-то не хватает, а то будешь дрочить полгода-год таненбаума, пока вкатываться мог
Аноним 05/03/19 Втр 19:31:36 #398 №1359722 
Анон помоги найти ошибку, каким-то образом искажается цветопередача когда делаю скриншет с помощью питона: subprocess и pipe.
https://pastebin.com/1AQ8WEkW
Если запускаю тот же pipe line в консоли - картинка нормальная.
Думаю что-то не так в районе возврата значения из output или записи в bytesIO. Но как это оттраблшутить и исправить?
Аноним 05/03/19 Втр 20:18:57 #399 №1359768 
>>1359722
Если output или f.getbuffer() записать на диск - получается правильная картинка.
Получается проблема гдето в районе открытия картинки через PIL.
Аноним 05/03/19 Втр 20:27:39 #400 №1359776 
выява.png
Что я делаю не так? Написал ACO для задачи коммивояжёра. При запуске (то что сейчас закомменчено) всё работало, но нужно было распараллелить вычисления. Изменил только строки на пикрелейтед. Ошибок во время выполнения в этом месте не происходит, но программа генерирует пустой путь. Вот полный код: https://ideone.com/bLo3yZ
Загуглив нашёл этот способ параллелить, в другой программе у меня он же работает адекватно.
Обычный не пуловский map нормально работает с теми же аргументами
Аноним 05/03/19 Втр 21:19:34 #401 №1359807 
>>1359722
Мда, это импорт np.asarray(img) неправильно работает.
PIL все верно отображает и сохраняет.
Аноним 05/03/19 Втр 21:50:09 #402 №1359822 
out.jpg
in.jpg
>>1359722
Этот Питон какой-то неправильный.
from PIL import Image
import numpy as np
import cv2 as cv

img = Image.open("in.jpg")
new = np.array(img)
cv.imwrite("out.jpg", new)
Что это за преобразование цвета на выходе?
Аноним 05/03/19 Втр 22:27:41 #403 №1359849 
>>1359822
Оказалось у opencv неправильный порядок цветов.
Фиксится так
new = cv.cvtColor(new, cv.COLOR_BGR2RGB)
Аноним 06/03/19 Срд 14:49:59 #404 №1360127 
>>1359040
В продакшене я такого не встречал конечно, но почему нет?
По факту веб морда+админка от джанги, а апи на /фреймворк_нейм/, другое дело это целесообразность такого подхода. Для начала нужно для себя причины обозначить этого зоопарка.
Я вижу только одну для себя - когда веб морда косвенно только связана с АПИ. К примеру у сайта обширное АПИ которое делает кучу всего, а вебморд только предоставляет доступ к готовым данным.

> А онлайн кинотеатр/мангаридер
В данном случае, вряд ли нужен такой зоопарк,
Аноним 06/03/19 Срд 16:02:18 #405 №1360168 
>>1360127
А че такое монолит?
Аноним 06/03/19 Срд 17:14:46 #406 №1360200 
>>1360168
Если кратко/просто: твоё приложение на джанге, куда запрос приходит, обрабатывается в этом же приложении и отдаётся назад результат. Никаких сервисов и распределённой структуры. Надо масштабировать? Берёшь всё своё приложение, копируешь на новый сервак и только в nginx добавляешь ещё один IP для распределения запросов и нагрузки.
Для небольших и средних проектов норм подходит.
Для чего-то более объёмного - не очень, т.к. зачастую лучше масштабировать отдельные части(я не про БД/кеш/подобное, а про отдельные вычислительные задачи, уровня "пережать видео", к примеру). Как-то так.
Аноним 06/03/19 Срд 18:40:22 #407 №1360269 
вопрос к знающим, почем Эллиот из сериала "Мистер Робот" использовал питон?
Аноним 06/03/19 Срд 19:01:15 #408 №1360279 
>>1360269
По той же причине почему брутфорс подбирал пароль за три минуты а не три недели.
Это просто условность.
Ну и ширусы писать можешь хоть на баше. Так что...
Аноним 06/03/19 Срд 19:06:33 #409 №1360286 
>>1360279
понял тебя
Аноним 06/03/19 Срд 20:44:49 #410 №1360344 
>>1359040
да, пользуем в проде, брат жив
Аноним 06/03/19 Срд 20:49:30 #411 №1360346 
>>1360200
Благодарю анончик:3 прямо по полочкам все встало
Аноним 06/03/19 Срд 20:51:09 #412 №1360347 
>>1360344
И как это выглядит всё? Можешь подробней рассказать? Почему такое выбрали?

>>1360346
Но эт, я это своими словами, я собесе не уверен что такое прокатит, если вдруг коснётся.
Аноним 06/03/19 Срд 21:51:57 #413 №1360380 
>>1332788 (OP)
Как сразу выйти из многомерной рекурсии или многократных циклов?.. На ум приходит тот самый goto из Си. Есть ли в Питоне наиболее элегантный выход из таких пизданутых циклов/рекурсивных вызовов функции?.. офк без выхода из программы с помощью sys.exit()
Аноним 06/03/19 Срд 22:00:43 #414 №1360385 
>>1360380
Не, предлагали подобный PEP, но гвидо ван россум отверг его (зато пропихнул ни кому не нужный оператор ":="). Для циклов можно использовать else после цикла, можешь нагуглить пример.
Аноним 06/03/19 Срд 22:14:45 #415 №1360389 
15518518719110.png
15518518719231.png
перекатываюсь с вопросом

курю bs4 решил спарсить информацию с сайта росстата и сразу фейл, какая-то ерунда с кодировкой на кириллице, перепробывал все, что нашел в интернете
на первом скрине то, что я пытаюсь спарсить, на втором попытки
что сделал:
создал объекты класса UnicodeDammit и BeautifulSoup - не помогло
использовал "formatter", который рекомендуется в официальной документации для работы с HTML entities https://www.crummy.com/software/BeautifulSoup/bs4/doc/#output-formatters
убрал пробелы и переводы строк(мало ли?) - очевидно не помогло
закодировал и декодировал в utf-8 - не помогло
Аноним 06/03/19 Срд 22:34:53 #416 №1360401 
>>1360380
>Как сразу выйти из многомерной рекурсии 
А разве там не достаточно просто return, чтобы выйти из рекурсии? Что ты имеешь в виду?


>или многократных циклов?
Типа, хочешь так?

for i in range(n):
    ...
    for j in range(m):
        ...
        if some_condition:
            <особый брейк чтобы выйти сразу из всех циклов>


Тогда можно вместо for использовать while и вычислять условие выхода:

some_condition = True
i = 0
while some_condition and i < n:
    j = 0
    ...
    while some_condition and j < m:
        ...
        some_condition = <проверяем условие досрочного выхода>
        j += 1
    i += 1


А можно хитрить, делать из многих циклов один:

from itertools import product


for i, j in product(range(n), range(m)):
    ...
    if some_condition:
        break

Аноним 06/03/19 Срд 22:46:35 #417 №1360428 
>>1360380
Пишешь вложенную функцию без параметров и тут же ее вызываешь. Прерываешь все return'ом
def yoba():
for for for for for for return

yoba()
Аноним 06/03/19 Срд 22:52:56 #418 №1360449 
>>1360401
>А разве там не достаточно просто return, чтобы выйти из рекурсии
Допустим функция вызывает саму себя. После return прекратится выполнение только вызванной функции. Та, что ее вызвала, продолжит ебошить
Аноним 06/03/19 Срд 23:09:18 #419 №1360456 
>>1360449
> Допустим функция вызывает саму себя
Как ты представляешь себе выход из рекурсии? Ты там на фортране хуячишь?
Аноним 06/03/19 Срд 23:13:10 #420 №1360463 
>>1360449
Тут надо исключение бросать и ловить. Хотя в целом это говнокод, но если очень нужно, то вперед
Аноним 06/03/19 Срд 23:17:58 #421 №1360467 
Антошь почему так? Этот упрощенный пример
while True:
print(self.server.recv(MAXBUF))
печатает только MAXBUF данных. Но я вручную запихал в сокет раз в 5 больше данных чем MAXBUF. (это unix сокет)
Аноним 07/03/19 Чтв 02:44:06 #422 №1360498 
screenshot-296.png
Привет.

Пишу websocket-чатик, который обменивается с клиентами JSONчиками. В них есть поля не только для хранения сообщений, но и всякие команды для сервера по типу авторизации, регистрации, добавления какого-нибудь пользователя в чс и т.д

Стек следующий:

1) aiohttp
2) peewee-async
3) PostgreSQL

Т.к я не знаю ничего кроме python и javascript, то написать могу только web-клиент. Для него хочу использовать Flask. Для фронта Vue, но это наверное неважно.

Вопросы для шарящих Анонов:

1) Как мне грамотно организовать сессию и аутентификацию?

Предполагаю, что клиент зайдет на страницу лигина, которую отдаёт Flask. Потом к Flaskу прилетит POST-запрос, и он сделает запрос на чат-сервер, т.е отправит JSON с введенной информацией в зашифрованном виде.
Если все ок, то сервер отдаст Flask какой-нибудь JSON Web Token, запишет сессию к себе в бд. После Flask ответит с сессионной кукой и перенаправит на страницу чата(типа окна мессенджера). Дальше клиент будет общаться напрямую с чат-сервером по websocket. Если страница перезагружается, то Flask будет проверять авторизацию пропуская запрос через себя к серверу и обратно.

2) На сервере для хеширования паролей хочу использовать bcrypt. Хеш с солью считается долго. Есть ли смысл считать его в отдельном потоке/пуле потоков/процессе/пуле процессов? Чтобы не было блокирующих операций.

3) Не могу понять, как нужно поступать с соединением с бд. На каждый запросс где-нибудь в middleware открывать соединение? Или нужно завести пул и брать соединения оттуда, а потом их освобождать?

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


Аноним 07/03/19 Чтв 02:56:07 #423 №1360501 
>>1360385
Ну вообще, как сахарок := достаточно удобен, мне например он в таком месте понадобился
if a:= some_dict.get('key') and a.get('nested') == 'some_string':
Аноним 07/03/19 Чтв 03:04:53 #424 №1360502 
wtf-photos-videos-untitled7.jpg
>>1360498
Нахуй тебе фласк если уже есть aiohttp?
Аноним 07/03/19 Чтв 03:09:04 #425 №1360503 
>>1360502
Потому-что я хочу написать сервер, который будет выполнять только основные функции чата, а не рендеринг шаблонов и обработку POST-запросов.

Чтобы его в будущем могло использовать какое-нибудь мобильное приложение. Хотя, конечно, проект учебный
Аноним 07/03/19 Чтв 03:09:59 #426 №1360504 
>>1360501
По ебалу надо бить за такой код. Давно уже придумали attribute access врапперы типа addict, но нет хочу жрать говно, зато ИСКАРОПКИ ХА-ХА, НИКАКИХ ЗАВИСИМАСТЕЙ, КАНЧАЮ ПРОСТА
if some_dict.get('key', {}).get('nested') == 'some_string':
Аноним 07/03/19 Чтв 03:12:55 #427 №1360506 
>>1360503
Что мешает сделать два "модуля": основные функция чата™ и рендеринг шаблонов© и запускать в рамках одного aiohttp сервера?
Аноним 07/03/19 Чтв 03:17:43 #428 №1360510 
>>1360506
И крутить всё в одном event loop? Какая-никакая лишняя работа для чат-сервера.
Аноним 07/03/19 Чтв 03:22:19 #429 №1360511 
>>1360510
define "лишняя работа"
Ты не задумывался вообще зачем нужен asyncio и event loop? Какую задачу он решает?
Аноним 07/03/19 Чтв 03:26:10 #430 №1360512 
>>1360511
Я прекрасно понимаю почему ты это написал.

Возможно аргумент с лишней работой не особо канает. Хотя думаю, что иногда и канает.

Но всё-таки разве не нужно разделять функциональность? Пусть ядро будет ядром, а модули модулями
Аноним 07/03/19 Чтв 03:28:09 #431 №1360513 
>>1360512
Так я тебе и говорю, разделяй. Что мешает разным модулям крутиться на одном сервере? Зачем ебаться и с фласком и с aiohttp, когда можно только с aiohttp?
Аноним 07/03/19 Чтв 03:43:43 #432 №1360516 
>>1360513
Вообщем, если сделать так, как ты предлагаешь, то вопрос с авторизацией и аутентификацией наверное отпадает. Хотя я так долго думал о своей модели, что мне надо еще всё осмыслить.

Оставшиеся вопросы еще актуальны
Аноним 07/03/19 Чтв 07:41:31 #433 №1360534 
14419942062550.png
>>1332788 (OP)
>22/01/19
Че за хуйня, блять?
Аноним 07/03/19 Чтв 08:34:49 #434 №1360538 
>>1360534
Пиздарики вашему бейсику. Гвидо съебался, хипстеры в годрысню перетекают, останетесь только у ученых, на пару с фортраном.
sage[mailto:sage] Аноним 07/03/19 Чтв 08:45:58 #435 №1360540 
>>1360538
Хипстота скорее в раст переползет
Аноним 07/03/19 Чтв 08:56:52 #436 №1360542 
>>1360538
Пруф?
Аноним 07/03/19 Чтв 09:19:37 #437 №1360553 
Новичок репортининг. Прошу, поясните какую логику действий от меня требуется провести, чтобы выполнить эту задачу? Как в голове должна собраться информация, чтобы я понял с чего я должен начать и чем закончить, а потом это оформить в код? Молю, мсье питонисты, помогите :с


Коля каждый день ложится спать ровно в полночь и недавно узнал, что оптимальное время для его сна составляет X минут. Коля хочет поставить себе будильник так, чтобы он прозвенел ровно через X минут после полуночи, однако для этого необходимо указать время сигнала в формате часы, минуты. Помогите Коле определить, на какое время завести будильник.

Часы и минуты в выводе программы должны располагаться на разных строках (см. пример работы программы)

Помните, что для считывания данных нужно вызывать функцию input без аргументов!
Аноним 07/03/19 Чтв 11:02:34 #438 №1360570 
>>1360347
я тебя слегка наебал, у нас на связке не фласк, а аиохттп, потому что скорость

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

Юзать фласк в качестве апи смысла вообще нет, в отличии от аиохттп скорости он никакой не даёт, а других профитов я не вижу
Аноним 07/03/19 Чтв 11:35:02 #439 №1360580 
>>1360553
Вводишь минуты.
Выводишь время после полуночи которое составляется из этих минут.

Аноним 07/03/19 Чтв 11:46:48 #440 №1360583 
>>1343405
>Чувак задал вопрос по ООП, потому что, ВНИМАНИЕ, не понимает ООП

>ЧСВшный мудазвон полил говно потом что не не понимает ООП

Ты вообщепоходу не подозреваешь какой же ты мудак блядь.


Мимо другой анон.
Аноним 07/03/19 Чтв 11:59:03 #441 №1360593 
>>1342729
> Elegant Objects же.
Почитал отзывы и описание, складывается впечатление что имею дело с сектой живой воды.
Но если серьезно имеет смысл обратить внимание или это какой то профисиональный мем как скип?
Аноним 07/03/19 Чтв 12:09:12 #442 №1360598 
>>1360570
Падажи, но судя по синтетическим (и не очень) тестам, фласк шустрее джанги значительно, но медленнее aiohttp, да.
Какие задачи у вас апи выполняет?
Аноним 07/03/19 Чтв 13:05:02 #443 №1360616 
>>1360593
Не только обратить, но и взять на вооружение. Базарю, еще захочешь.
Аноним 07/03/19 Чтв 14:13:19 #444 №1360634 
Читаю щас байт оф пайтон. Пиздец, на примере с оператором if 6 ошибок в коде. Что за хуйня, это какой-то особый метод обучения или книга устарела?
Аноним 07/03/19 Чтв 14:53:45 #445 №1360656 
>>1360634
> 22 August 2013
> 07 March 2k19
> Что за хуйня, это какой-то особый метод обучения или книга устарела?
Ну вот хуй знает.
Аноним 07/03/19 Чтв 14:57:25 #446 №1360657 
>>1360656
Ладно, тупой вопрос был. Ну зато интересно разбираться в чем ошибки и исправлять их, может быть я и материал лучше усвою
Аноним 07/03/19 Чтв 15:25:30 #447 №1360670 
>>1360634
Блять, я мудила. Все проблемы из-за отступов были, а я сидел и код правил.
Аноним 07/03/19 Чтв 15:35:02 #448 №1360671 
>>1360616
А русик есть?
Аноним 07/03/19 Чтв 16:33:36 #449 №1360685 
>>1360671
Нет, Русик вышел, что ему передать?
Аноним 07/03/19 Чтв 19:09:16 #450 №1360727 
image.png
>>1360685
Передайте ему "С таким отношением только торрент".
Аноним 07/03/19 Чтв 22:19:54 #451 №1360788 
9780136291558.jpg
>>1342729
>Elegant Objects
Хуйня для ньюфагов.
Аноним 07/03/19 Чтв 23:32:17 #452 №1360799 
>>1360593
>считать сикп мемом
>считать ооп из eo сектой святой воды

Дай угадаю остальные твои воззрения:
>адепты юнит-тестирования - это свидетели иеговы
>статическую типизацию придумали веруны в нло
>многопоточность - это мем
>монады - выдумка жидорептилоидов, чтобы запутать Ваню
Аноним 07/03/19 Чтв 23:33:29 #453 №1360800 
>>1360583
Его полили говном не поэтому, кстати.
Аноним 08/03/19 Птн 00:03:10 #454 №1360808 
Здравствуйте, что делать. если я хочу запустить нейронку на своей пеке на своем старом двухядерном процессоре. А потом запустить нейронку в google colab на TPU? Суть в том, что я хочу показать скорость на пеке со старым процессором. И скорость с TPU. Но насколько я понимаю, помимо TPU в google colab есть еще CPU0, который вероятно тоже как-то участвует и вносит свои коррективы.

Как сделать так, чтобы CPU0 от google colab не участвовал?

В машобтреде вопрос задал, но там обычно не отвечают
Вопрос по PyQt5  Аноним 08/03/19 Птн 00:12:23 #455 №1360812 
45433 -1183715987.jpg
Дока говрит шо model.appendRow(<Список>) из класса QStandartItemModel может добавить в строку список, но матерится шо это не QStandartItem, пробую через него по отдельности в цикле добавлять, Арёт шо не str типа, в итоге я просто отдельно добавляю пустую строку и потом вставляю элементы через setItem
Аноним 08/03/19 Птн 01:28:06 #456 №1360831 
>>1360799
Скип и правда мем в среде программирования. То что ты не в курсе определения "мем" - твои личные проблемы.

>считать ооп из eo сектой святой воды

Во первых это было не утверждение а вопрос.
И вопрос не о концепции ООП в целом, а личном его представлении егорки.
Так что и тут обосрался, маня.
Аноним 08/03/19 Птн 11:22:56 #457 №1360901 
>>1360812
1) PyQT - кривожопое говно, хоть лучше ничего и нет.
2) Что ты вообще хочешь сделать?
3) Дай код.
Аноним 08/03/19 Птн 12:20:28 #458 №1360915 
prof2.png
>>1360831
>складывается впечатление что имею дело с сектой живой воды
>это было не утверждение а вопрос.
Аноним 08/03/19 Птн 12:41:22 #459 №1360923 
>>1360915
Так все ООП исключетельно на егорке сошлось, или нет, несектант?
Аноним 08/03/19 Птн 13:08:53 #460 №1360935 
15267356568720.png
Применяется ли методология SOLID?
Применима ли она в питоне?


Смотрю вроде на примерах пока все, ну кроме разделения интерфейсов наверное, кажется лютым капитанством.
Когда смотришь антипримеры как делать не стоит - вообще не понимаешь каким надо быть дебилом что бы так писать.
Вроде и так понятно что надо делать так.
Аноним 08/03/19 Птн 13:17:45 #461 №1360940 
>>1360580
>Вводишь минуты.
>его сна составляет X минут
Х минут, это сколько минут? Сколько вводить?

>Выводишь время после полуночи которое составляется из этих минут.
Начать считать минуты после полуночи, до скольки? Когда перестать вести счет?

Да, я тупенький, но я хочу разобраться и начать кодить, все говорят, что питон простейший язык для вката, я должен это осилить
Аноним 08/03/19 Птн 13:30:25 #462 №1360945 
>>1360788
Да уж, Eiffel для настоящих олдфагов.

>И вопрос не о концепции ООП в целом, а личном его представлении егорки.
Егорка не один представляет ООП таким образом, есть много независимых разработчиков со схожими представлениями.
Аноним 08/03/19 Птн 13:31:33 #463 №1360950 
>>1360831 --> >>1360945

Аноним 08/03/19 Птн 13:31:38 #464 №1360951 
>>1360940
>Х минут, это сколько минут? Сколько вводить?
Тоже всегда терялся на этих задачках потому что написаны они максимально расплывчато и поуебански.
Но вообще все просто.
Ты должен написать прожку которая выводит время при любом икс.

То есть сколько минут ч часах? 60.

Еслли ввели 50

Оно должно вывести
часы: 0
Минуты: 50

Ну или просто 00:50

Если 70
то 01:10

Если 130:
02:10

Проще говоря вся задача это простое деление числа икс с остатком на 60.
Или остаток от деления если целой части нет.

Аноним 08/03/19 Птн 14:02:51 #465 №1360963 
>>1360951
А как научиться понимать, чего от тебя требуют в этих мразотных задачах? Мне все время кажется, что там дохуя лишней информации, в которой я путаюсь, я вообще подумал, что тут два неизвестных числа, и нужно ебаться с Х и Y
Аноним 08/03/19 Птн 14:25:11 #466 №1360969 
>>1360963
Спрашивать, если это соревнование, у жюри, если это для учебы, у преподов, если просто так книжку изучаешь, там, наверное, ответы есть в конце, если нету и очень нужно узнать мнение авторов задачи, пиши авторам учебника, честно говоря, если ты это сам для себя решаешь, то в случае непоняток можешь просто сам выбрать как эту задачу понимать, если вариантов много, можешь сделать для нескольких из них, упражнение же. В целом, понимать поможет только опыт.
Аноним 08/03/19 Птн 15:10:40 #467 №1360978 
>>1360969
Оу, спасибо
Аноним 08/03/19 Птн 16:14:16 #468 №1361029 
>>1360963
>А как научиться понимать, чего от тебя требуют в этих мразотных задачах?
ПОнятия не имею, я в олимпиадном программировании никогда участие не принимал.
Попробуй codewars. Там на английском и то понятнее чем то что пишут в этой хуйне на родном.
Сука, аж трясет нахуй из-за этих пидорских подходов постановления задачи или описания темы у меня проблемы с математикой в школе были.
А как только стал изучать сам - все пошло естественно и как по маслу.
Аноним 08/03/19 Птн 16:50:51 #469 №1361047 
>>1361029
Дак я вот как раз и пытаюсь сам вкатиться, смотрю ролики, сайты, задачи выполняю, а задачи составляют вот такими пидорскими методами
Аноним 08/03/19 Птн 17:04:18 #470 №1361053 
>>1361047
Тогда тебе лучше на кодварс, но он скучноватый, или CheckIO.
Они полезны тем что после того как решил можешь посмотреть как решили другие.
Аноним 08/03/19 Птн 17:36:28 #471 №1361067 
>>1361053
А можешь посоветовать какие-то аудиокниги, лекции и прочее говно, которое я смог бы слушать на работе и запоминать? Где поменьше практики, я так пару лекций по джаве слушал, там начало только и многое применимо к питону, но дальше пошел пиздарез с практикой и писаниной, и такое я осилить не смог, ибо на работе непопишешь, зато выучил всякие термины и обозначения, нужно побольше такой залупы, имеется?
Аноним 08/03/19 Птн 17:42:05 #472 №1361068 
>>1361067
>какие-то аудиокниги, лекции и прочее говно, которое я смог бы слушать на работе и запоминать?
чтобы релаксирующая музыка была на фоне и начитывала девочка нежным голоском!
Аноним 08/03/19 Птн 17:49:21 #473 №1361070 
>>1361068
Чтобы можно на работе было учить теорию, а дома уже практиковаться
Аноним 08/03/19 Птн 18:48:42 #474 №1361101 
Аноны, выручайте, что-то не так пошло с окружением питона на моей десятой винде. Я когда-то давно накатил анаконду, но не пользуюсь ей. Только сейчас заметил, что если запускать питоновые скрипты напрямую, то есть не передавая их путь аргументом в интерпретатор, он ищет библиотеки в директории анаконды. Из-за этого у меня трейсбеки при импорте некоторых либ (так я проблему и обнаружил). В переменных окружения нет PYTHONPATH вообще, а PATH содержит только путь для ванильного CPython, который работает нормально. Хочу узнать, как это починить, не удаляя анаконду, чтобы в будущем такие проблемы решать самостоятельно.
Аноним 08/03/19 Птн 18:59:05 #475 №1361112 
Какую функцию выполняет Int именно перед input
Нахуй он там нужен программе? int (input()) Без инта никак?
Аноним 08/03/19 Птн 19:18:46 #476 №1361122 
>>1361112
С int тебе можно будет только целые числа вводить
Аноним 08/03/19 Птн 19:22:54 #477 №1361127 
image.png
Читал кто-нибудь пикрил?
Аноним 08/03/19 Птн 22:23:25 #478 №1361178 
B4bAJLg.png
Неужели нельзя в книге для новичков попроще это написать, без ебаной рекурсии?
Аноним 08/03/19 Птн 23:32:08 #479 №1361195 
14519313631550.jpg
>>1361178
> в книге для новичков
Классика.
Аноним 09/03/19 Суб 00:37:38 #480 №1361226 
>>1361127
Если этот код напечатан на обложке, то я предлагаю сжечь
Аноним 09/03/19 Суб 00:56:32 #481 №1361233 
Анон, поясни почему list(set([11,22,33]))==[33, 11, 22]
Аноним 09/03/19 Суб 01:27:18 #482 №1361242 
>>1361233
А хули не понятно? Set не упорядочен, у тебя каждый раз новый list будет, иногда будет совпадать и равенство будет выполняться
Аноним 09/03/19 Суб 01:36:57 #483 №1361247 
>>1361242
>иногда будет совпадать и равенство будет выполняться
Базаришь?
https://www.onlinegdb.com/Skyy0DlPV

Тебе лишь бы ляпнуть. Сказать потому что он хеши сортирует куда логичнее.
Аноним 09/03/19 Суб 04:44:15 #484 №1361268 
>>1361247
Строго говоря в этой версии сортирует, в следующей не сортирует. Единственное, что гарантируется интерфейсом - это то, что он неупорядочен.

мимо
Аноним 09/03/19 Суб 09:03:02 #485 №1361297 
>>1361195
Но все же совсем наоборот.
sage[mailto:sage] Аноним 09/03/19 Суб 09:11:18 #486 №1361300 
>>1361195
>компьютерному программированию
>компьютерному программированию
>компьютерному программированию
Аноним 09/03/19 Суб 19:39:41 #487 №1361533 
Товагищи, киньте ссылкой на mail.ru облаке с видеокурсами по питону. Пролетала здесь, но найти чот не могу. Плиз.
Аноним 09/03/19 Суб 20:12:40 #488 №1361562 
>>1361101
Идешь в обычную, а не десяточную, панель управления - система - ну и дальше там где-то будут переменные окружения.
снеси нахуй, поставь искаропки, пиши под линухом, как вариант. чем более дефолтные у тебя настройки, тем легче жить
Аноним 09/03/19 Суб 20:30:57 #489 №1361577 
>>1360540
Эта хуйня все еще не утонула?
Аноним 09/03/19 Суб 20:32:20 #490 №1361579 
>>1360553
Ох, тоже на степике сидишь?
Аноним 09/03/19 Суб 21:13:56 #491 №1361619 
>>1361579
Ох, и я оттуда. То, как они пишут задачи -- нечто.

мимо-изучающий-питон
Аноним 09/03/19 Суб 21:16:32 #492 №1361621 
>>1361619
Объяснение материала тоже "10/10"

>мимо-изучающий-питон
Можно было и не уточнять
Аноним 09/03/19 Суб 21:46:40 #493 №1361637 
САП, питонач.

Вопрос следующего характера:

Чем больше сижу на кодварс и сололерн, тем больше привыкаю к использованию лямбда-функций, итераторов, всякого рода мапов и фильтров (так как, часто, их использование помогает быстрее/легче решать задачки, побеждать в дуэлях и тому подобное).

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

Как часто вы используете эти фичи пайтона, и как не перегнуть палку?
Аноним 09/03/19 Суб 22:12:49 #494 №1361648 
>>1361112
Не слушай >>1361122 петуха. input возвращает строку, int пытается преобразовать то, что ему дано в ход в целое число.
>>1361127
Хз что за книга, но на обложке что-то многообещающее. Если >>1361226 щеночек придирается к форматированию, то очевидно оно сделано для того, чтобы больше уместилось. А так, если в книге весь код такого уровня, то думаю полезно почитать. Но скорее всего это как трейлеры в кино. И вообще книги кал, смотри выступления с конференций на ютубе, читай чужой код.
>>1361178
Если это книга для новичков, то выбрасывай её, это конечно академичный таск про список атрибутов всех родителей, но в реальной жизни никому не пригодится. И непонятно, почему он использует для visited словарь, в который засовывает True. Нахуй вообще значение надо, если единственную ценность представлюят ключи. Было бы логичнее использовать set. Короче, хуйня какая-то.
>>1361637
Это пиздатый концепт, но он не особо применим в пифоне. Основная идея: сделать коротко и читаемо разбивается об противоположный камень с ростом сложности задачи. И наверное это хорошо, потому что большой код ≠ нечитаемый код, а короткий код ≠ читаемый код. Я тоже грешил лямбдами, фильтрами, мапами сначала, но, поверь мне, старая добрая функция/генератор/for будут гораздо более читаемыми и поддерживаемыми. Иногда map удобен, спору нет, но он удобен только когда это всё влезает в одну строку в 80 символов.
Аноним 09/03/19 Суб 23:51:28 #495 №1361705 
>>1361648
>И вообще книги кал, смотри выступления с конференций на ютубе
Щееееет. Индусские туториалы ваще бомба.
Аноним 10/03/19 Вск 00:04:43 #496 №1361723 
1536562549546.jpg
Питоначъ, помоги
Есть строка вида "Я люблю {анекдоты}"
И есть список ["собак", "дошираки", "двач"]
Нужно перебрать все возможные варианты строк, подставив в фигурные скобки то, что находится в списке, и не забыть о том слове, которое изначально находится в строке (анекдоты).
Как это сделать так, чтобы оно не выглядело слишком монструозно?
Аноним 10/03/19 Вск 00:06:44 #497 №1361725 
>>1361723
Пиши регексп, серчем слово достаёшь, сабом заменяешь.
Или финд скобы если не предполагается ложных и неверных скоб.
Аноним 10/03/19 Вск 00:10:34 #498 №1361731 
>>1361725
Да вот у меня только с регулярными выражениями и получалось. Мне думалось, что есть какой-нибудь симпатишный способ
Аноним 10/03/19 Вск 00:13:30 #499 №1361735 
>>1361705
Ты долбоёб? Я имею ввиду пиздатые выступления с конференций: David Beazley, James Powell, Raymond Hettinger.
Аноним 10/03/19 Вск 00:13:54 #500 №1361736 
>>1361731
Что симпатичнее регулярки?
Аноним 10/03/19 Вск 00:15:31 #501 №1361737 
>>1361736
Всё что угодно например.
>>1361723
Этот >>1361725 верно написал. Если у тебя регулярный текст, то токо re выручит.
Аноним 10/03/19 Вск 00:21:25 #502 №1361741 
>>1361725
>>1361737
Добра и денег вам! Спасибо.
Аноним 10/03/19 Вск 01:49:57 #503 №1361779 
Йоу, хочу в нейросети вкатиться, чтобы хоть что-нибудь понимать, но я очень тупой.
Что делать ? Что почитать ?

(Повеситься пытался, но веревка порвалась)
Аноним 10/03/19 Вск 02:11:08 #504 №1361783 
>>1361779
Есть упрощенный вариант, можно ни английский не знать, ни быть суперматематиком.
- На русском курс про машинное обучение пройти на stepic.org
- Умножение матриц, операции с векторами, смысл производной, производная z(x,y) можно прочесть на mathprofi.ru
- Потом на русском на youtube Андрей Созыкин - Глубокие нейронные сети на Python
- Потом переведенная книга на русский Шолле Франсуа - Глубокое обучение на Python

Этого мало для вката, только лишь вступление, но дальше уже проще будет ориентироваться в более сложной литературе.
Аноним 10/03/19 Вск 11:35:38 #505 №1361853 
Посоны, насколько зашкварно при написании кода не оставлять пробелы после операторов присваивания и после запятых?.. Считаю лишней тратой времени, которая нисколько не повышает читаемость кода
Аноним 10/03/19 Вск 11:57:15 #506 №1361862 
>>1361853
>Считаю лишней тратой времени
Ты там на скорость кодишь?
Аноним 10/03/19 Вск 12:39:17 #507 №1361881 
>>1361853
>насколько зашкварно
В крайней степени. Почитай и подумай над своим поведением.

https://www.python.org/dev/peps/pep-0008/

https://pythonworld.ru/osnovy/pep-8-rukovodstvo-po-napisaniyu-koda-na-python.html
Аноним 10/03/19 Вск 12:40:32 #508 №1361884 
Питоняши, подскажите, пожалуйста, существует ли SICP на Python в русском переводе?
Аноним 10/03/19 Вск 13:27:10 #509 №1361900 
>>1361881
РЕР для пидоров
Особенно убивает концепция "выделяй бинарные операторы пробелами но сцуко не смей так делать для аргументов по умолчанию"
Аноним 10/03/19 Вск 15:06:21 #510 №1361954 
image.png
аноны помогите аутисту написать симуляцию крафта с шансом, а то даже мыслей нету как.

Есть момент крафта вещи а именно в нем участвуют от 3 до 5 вещей (больше или меньше нельзя), шанс успеха крафта 3 вещи 60%(в случае неудачи возвращается 1 вещь), 4 вещи 80%(в случае неудачи возвращается 1 вещь), 5 вещей 100% (шанса неудачи нет, поэтому этот вариант не учитываем)





Результат выводиться в виде:
> 60% шанс - 11 / 100 , остаток - 1
> 80% шанс - 26 / 100 , остаток - 2
Аноним 10/03/19 Вск 15:21:53 #511 №1361962 
>>1361954
Блять, что крафтим-то? Какая еще "одна вещь возвращается" в случае неудачи? Чего блять?..

Изначально если у нас есть "вещи", напрашивается ООП. Метод класса craft должен брать несколько объектов и по len(args) выбирать вероятность успеха. А функция random.random() генерирует float и смотрит попало ли оно в выбранный % диапазон
Аноним 10/03/19 Вск 15:24:55 #512 №1361965 
>>1361954
>shans = random.randint(0,1) #0 = 60%, 1 = 80%
Анон, шанс работает не так.
Аноним 10/03/19 Вск 15:27:39 #513 №1361967 
>>1361965
Он для начала приебошил этот костыль ибо не знает че да как. Если он хочет рандомно выбирать шанс, то ему в помощь random.choice, если ему нужен фиксированный фанс в случае каждой определенной ветви, он просто сравнивает рандомно сгенерированное число с float-границей
Аноним 10/03/19 Вск 15:28:09 #514 №1361968 
image.png
Сейчас изучаю матан(2 семестр технического вуза), немного выучил синтаксис питона(основы, но смогу написать какую-нибудь сортировку массива и простую функцию). Что дальше для машинного обучения? Изучать ооп и питон дальше? или уже пытаться вкатиться в нейронки? Я тут на курс какой-то от физтеха записался, но чет смотрю на программу и страшно, за 14 недель столько пройти
Аноним 10/03/19 Вск 15:29:26 #515 №1361971 
image.png
>>1361962
> Блять, что крафтим-то?
Абстрактную вещь
> Какая еще "одна вещь возвращается" в случае неудачи? Чего блять?..
Беру я 3 predmet, шанс успеха крафта 60%, в случае успеха я получаю один gotoviy_predmet, в случае неудачи я получаю один predmet
и
Беру я 4 predmet, шанс успеха крафта 80%, в случае успеха я получаю один gotoviy_predmet, в случае неудачи я получаю один predmet


> Изначально если у нас есть "вещи", напрашивается ООП. Метод класса craftдолжен брать несколько объектов и по len(args) выбирать вероятность успеха. А функция random.random() генерирует float и смотрит попало ли оно в выбранный % диапазон
Мне бы в виде кода, а то я не очень понимаю
Аноним 10/03/19 Вск 15:32:22 #516 №1361973 
>>1361954
def craft(num: int):
--chanceRoll = random.random()
--if num == 3 and chanceRoll >= 0.6:
----return True
--elif num == 4 and chanceRoll >= 0.8:
----return True
--else:
----return False

>>craft(3)
True

Примерно так. В Тру и Фолсы подставляешь то, что хочешь в итоге.
Аноним 10/03/19 Вск 15:37:51 #517 №1361977 
image.png
>>1361973
Пасибо антоша.
Аноним 10/03/19 Вск 15:50:10 #518 №1361984 
>>1361977
Я только ща сообразил, что ты хочешь, в общем, функция может принимать еще и список predmet'ов, а в случае неудачи возвращать случайный из них:

def craft(num: int, items: list):
...
--else:
----return random.choice(items)

>>craft(3, ['хулиточка', 'анус пса', 'червь-пидор'])
анус пса

В случае удачи, соответственно, возвращается скрафченный предмет. Организуется в виде словаря:
CRAFTED_ITEMS = {'JavaScript': ['хуй', 'говно', 'жопа'], 'Хуита': ['хулиточка', 'анус пса', 'червь-пидор']} и тогдалия.
Ну, а в функции craft() сравниваешь входящий список со значением в словаре и возвращаешь соответствующий ключ.
Аноним 10/03/19 Вск 16:13:35 #519 №1361990 
>>1361971
>Мне бы в виде кода
Сам бы и написало этот класс Item с базовыми методами и атрибутами. От него можешь наследовать подобные классы для расширения функционала, можешь примешивать другие классы для того же и т.п. Мне банально лень тебе это все расписывать. Подобие метода класса внизу. Реализация самого крафта вещи как такового по любому должна идти через БД какого-либо вида. В принципе можно удовлетвориться отдельным двоичным файлом pickle, где имеется кортеж пар set - item. Ну или банальный словарь где опять же ключ - название предмета, значение - set его компонентов

def craft(args):
----R = random.random()
----if len(args) not in range(3,6):
--------print('Cannot craft an item from these')
----elif len(args) == 3:
--------if R >= 0.6:
------------item = random.choice(
args)
------------del args
------------return item
--------else:
------------return new_item(args)
и т.д.
Аноним 10/03/19 Вск 16:14:43 #520 №1361991 
>>1361990
Забыл, что здесь подзалупная звездочка интерпретируется как italic
Аноним 10/03/19 Вск 17:10:45 #521 №1362022 
Че плохого в глобальных переменных? Вижу что тут, что в Си от них стараются избавляться. Причина?.. "Э ну тип не круто как-то да)))" не катит, нужны рациональные причины подобному поведению разрабов
Аноним 10/03/19 Вск 17:47:12 #522 №1362054 
>>1362022
>Причина?
Дурной тон.
Представь себе масштабную разработку с привлечением кучи разрабов, которые хуярят глобалки. Во-первых, есть шанс совпадения имен, тогда все поедет к хуям: у одного это одно значение, а у другого имя переписывается принимает другое. Во-вторых, тяжело читать такой код. Вот проект с кучей py-файлов и импортов между ними. И то тут, то там всплывают рандомные глобалки. Что это, откуда это, почему это здесь? Хуй поймешь, нужно искать и смотреть, что это означает. Если бы это была функция, которая возвращает булку или список, было бы понятнее. Человек смотрит на импорты и видит, ага, вот импорт из "неймспейса" такого-то, можно зайти в него и посмотреть, что из себя функция представляет, что принимает и что возвращает. А если это какой-то NAME_LIST_2, то охуеть не встать, давайте по поиску попытаемся найти, что это за дрянь, а потом оторвем руки тому, кто ее сделал.
Аноним 10/03/19 Вск 17:55:42 #523 №1362060 
>>1361900
Твоя жопа для пидоров. Следовать стандартам порожденным многолетним опытом работы сообщества разработчиков - путь настоящего мужчины.
Аноним 10/03/19 Вск 18:08:34 #524 №1362067 
>>1362022
>не катит, нужны рациональные причины подобному поведению разрабов
Хуятит пиздюк ебанный. Ты мне еще на собесе так побазарь со старшими.
Любой программный продукт это коллективный труд большого количества людей на протяжении длительного времени, а не твои убогие высеры уровня васянская лаба.
Поэтому он должен быть масштабируемым блядь, и что бы изменения в одной его части не делили весь продукт на ноль, делая его неработоспособным.
За подробностями открывай принципы SOLID и читай нахуй они нужны.
Аноним 10/03/19 Вск 18:21:15 #525 №1362082 
71810n.jpg
>>1362067
>Ты мне еще на собесе так побазарь со старшими
Аноним 10/03/19 Вск 20:33:44 #526 №1362157 
День добрый, мисье сенньйоры
Прошу посоветовать мне что-то на питон, фреймворк, библеотеку или че там ваще похуй, что сможет просто блять грамотно обрабатывать дохуиллиард соединений, ладно не дохуиллиард, а ,допустим, одновременно до 1к соединений, чтоб я мог нормально обрабатывать запросы, чтобы без всяких ебанутых надстроек по типу django или pyramid где в рот ебись не нужная авторизация админпанель и все в этом роде где можно легко поьтеряца, и нужно чтобы это было то, что я один раз запущю, и туда будут приходить соединения, чтобы типа у меня внутри был класс обработчик который каждый раз будет вызываться при новом соединении и я буду там уже со всей хуйней делать свои надстройки и прочую поебалистику, а то , сука, куда не плюнь, все блять готовых решений наклепали и они нахуй не нужны мне, шо то говно, шо это, прошу вас, посоветуйте
Аноним 10/03/19 Вск 21:20:45 #527 №1362189 
>>1362157
>>Хочу то, не знаю что
Идешь нахуй
Аноним 10/03/19 Вск 22:10:49 #528 №1362229 
>>1362157
Гугли Event Loop.
Реализовывай сам.
Аноним 10/03/19 Вск 22:19:01 #529 №1362235 
>>1362157
Прочитай про новые корутины, async/await и все дела.
Аноним 10/03/19 Вск 22:26:46 #530 №1362242 
>>1362189
в этом вся и проблема что я не знаю что мне конкретно нужно, из http серверов всякая пораша по типу фласка джанго пирамид имеет слишком много не нужных мне для решение задачи надстроек, мне нужно что-то что просто будет корректно осуществлять менеджмент подключений, с возможностью расширения способностей по средству моего кода, я не хочу с нуля писать сервер на тех же сокетах, мне нужен готовый, провереный вариант, а ты нахуй шлешь, пидрила
Аноним 10/03/19 Вск 22:33:29 #531 №1362247 
>>1362229
>>1362235
прочел, будто китайский, т.е. не совсем понимаю как это можно применить в моей задаче, нужен просто чистый сервер, на сокетах ли на вебсокетах, плевать, просто чтобы он грамотно коммутировал подключения, ибо сокеты для меня темный лес
Аноним 10/03/19 Вск 22:40:02 #532 №1362251 
>>1362229
а бля, я дебс, да, годнота, благодарю, внатуре сам наебашу, спасибо всем
Аноним 10/03/19 Вск 23:33:26 #533 №1362270 
image.png
Вкатываюсь в питон, читаю книги, слушаю лекции, все дела. Хотел спросить за методы обучения, правильно ли после каждого выученного "ключевого слова" типа синтаксиса и правильности написания команд, дрочить каждый раз это в нотбуках?
Ну вот сегодня я выучил как доставать цитаты и строчки из текста с выводом на экран, все питонеры запоминают команды типа "cliches, потом ставишь "=" и далее..." ну и в таком духе, это должно быть все в голове?
Я вот каждый день учу новое и тренирую старое, так должно происходить самовкатывание в питон?
Аноним 11/03/19 Пнд 00:07:50 #534 №1362289 
>>1362270
Нет. Видеотуторы по большей части бесполезны, даже с учетом того, что ты повторяешь за ними. Ты просто на втором уроке тут же забудешь, что было в первом. Поставь себе реальную практическую задачу. Например, автоматизировать что-нибудь на работе или дома. Часто повседневные задачи включают работу с папками и файлами (копирование, создание, удаление), чтение из текстовых файлов, запуск программ по расписанию. Когда ты ставишь себе задачу, то начинаешь искать методы ее решения. Тут-то и приходит запоминание, поскольку ты не все в одну кашу смешиваешь, а выделяешь необходимое.
Когда создашь скрипты, можно подумать о GUI, чтобы тот или иной скрипт выполнялся по нажатию кнопочки в красивом окошке. Тут уже смотреть надо на PyQt - непаханное поле дроча и вникания в его функционал.
Аноним 11/03/19 Пнд 07:35:00 #535 №1362367 
12.jpg
Здравствуйте, дорогие специалисты, помогите, пожалуйста, с решением задачи восстановления регрессии. Мне нужно взять какой-нибудь метод машинного обучения для восстановления регрессии, например, gradient boosting, скормить ему данные(ссылка на данные ниже) из задачи прогнозирования критической температуры при которой материал становится сверхпроводником:

https://archive.ics.uci.edu/ml/datasets/Superconductivty+Data#

У меня следующий вопрос. Могу ли я привести признаки к общей шкале(стандартизировать)? То есть взять каждый столбец признаков и вычесть из каждого значения столбца mean по данном столбцу, а потом поделить на std по этому столбцу? И так сделать со всеми столбцами(На приложенной картинке описал формулами стандартизацию)?

Скажите, пожалуйста, мне нужно такую стандартизацию делать или нет?
Аноним 11/03/19 Пнд 22:46:26 #536 №1362724 
Как быстро и элегантно рандомно вытаскивать из списка объекты?..
Ведь просто метод random.choice рандомно выбирает один из объектов, но исходный список он не изменяет

Варианты: а) после операции val=random.choice(Iterable) использовать метод Iterable.remove(val). Но если таких элементов несколько он удалит первый в очереди, иногда это может быть критично
б) сделать через val=Iterbale.pop(random.randint(0,len(Iterable)-1) . Но выглядит пиздец уебищно

Че делать?
Аноним 12/03/19 Втр 00:41:19 #537 №1362795 
>>1362724
https://docs.python.org/3/library/random.html?highlight=random%20shuffle#random.shuffle
Аноним 12/03/19 Втр 14:39:47 #538 №1362975 
задача:
3x1 + 4x2 -> min

2x1 + x2 >= 3000
20x1 + 4x2 >= 45000
43x1 + 2x2 >= 12000
10x1 + 5x2 >= 55000

код
res=linprog([3,4],
A_ub=[[-2, -1],[-20, -4],[-43, -2],[-10, -5]],
b_ub=[-3000, -45000, -12000, -55000])

что не так то блять?(
в онлайн сервисе решается, а этот код выдает ошибку

ValueError: Phase 1 of the simplex method failed to find a feasible solution. The pseudo-objective function evaluates to 2.5e-11 which exceeds the required tolerance of 1e-12 for a solution to be considered 'close enough' to zero to be a basic solution. Consider increasing the tolerance to be greater than 2.5e-11. If this tolerance is unacceptably large the problem may be infeasible.
Аноним 12/03/19 Втр 19:36:25 #539 №1363105 
>>1362975
>3x1 + 4x2 -> min
Это еще что блять? Что за оператор ->
Че требуется?..
Аноним 12/03/19 Втр 21:25:40 #540 №1363161 
>>1361968
Сильно задрачивать питон не нужно, в ML тебе даже ООП редко когда понадобиться. Там в основном нужно либы знать, ну знания самого предмета нужны. Хорошее знание языка тебе пригодиться, когда будешь модели импленетировать с нуля на каком-нибудь tensorflow. В общем, учи питон по мере необходимости. Если возникают проблемы, то грамотно сформулированный поисковой запрос на английском языке поможет тебе в 99% случаев. Могу дать ещё такой совет: смотри чужой код. Сначала пробуй решить сам ( с помощью гугла), а потом смотри как решают эту задачу другие люди, наверняка у курса есть свое коммьюнити, мб там вообще решения выкладывают после дедлайнов. Это поможет тебе прогрессировать, и не вариться в котле со своими костылями. Если знаний языка совсем не хватает, то можешь глянуть какой-нибудь курс или видос по нужной теме, благо их сейчас достаточно
Аноним 13/03/19 Срд 18:08:52 #541 №1363569 
>>1363105
Я имел в виду, что это целевая функция, конторую нужно минимизировать
Аноним 13/03/19 Срд 18:57:18 #542 №1363598 
Аноны, надо объединить несколько физических машин в одну большую(виртуаьную), для того что бы я потом мог подключаться к ней и запускать задания на ней.
Докер думаю юзать, то там столько всего и хз что лучше подойдёт мне для этих целей.
Уже есть images с тасками, которые буду запускать, осталось только решить проблему объединения.
Смотрел в сторону докер-машины и swarm(создаю одного менеджера и кучу воркеров), но не уверен что это то, что мне нужно.
Аноним 14/03/19 Чтв 08:33:32 #543 №1363975 
>>1362975
floating point-проблемы в scipy, советуют использовать method='interior-point'.

https://github.com/scipy/scipy/issues/6139

Ну либо options={'tol': 1e-10} добавь, как сообщение говорит.
Аноним 15/03/19 Птн 11:54:17 #544 №1364650 
snapshot20090913150511.jpg
Привет.

Решил попробовать наимоднейшую нынче тулзу pyenv.
На моей свежеустановленной системе 2 пайтона: 2.7.15 и 3.7.2. Почему pyenv видит только 3.7.2(system)? Или просто 2.7.15 не используется для системных нужд и стоит просто так? Хотя в это сложновато поверить, т.к у меня Arch.

Собираюсь поставить еще одну модную тулзу pipenv. Т.к его нужно засунуть в site-packages какого-нибудь из пайтонов, непонятно кого выбрать. Лучше поставить к системному мб? Или это вообще не имеет значения?
Аноним 16/03/19 Суб 22:21:16 #545 №1365643 
Антошь, почему этот ХелоуВорлд из доков не работает?

import asyncio

async def main():
print('Hello ...')
await asyncio.sleep(1)
print('... World!')

asyncio.run(main())

Вываливается ошибка: RuntimeError: asyncio.run() cannot be called from a running event loop
Версия питона 3.7.2
Аноним 16/03/19 Суб 23:10:19 #546 №1365693 
>>1365643
Вот черт, это ошибка с IDE Spyder.
В консоле все работает.
>>> import asyncio
>>> async def main():
... print('Hello ...')
... await asyncio.sleep(1)
... print('... World!')
>>> asyncio.run(main())
Hello ...
... World!
>>>
Оказалось что сраные пердолики в IDE уже где-то крутят эвент лупом.
Фикс:
import nest_asyncio
nest_asyncio.apply()
Аноним 18/03/19 Пнд 09:08:54 #547 №1366386 
>>1365693
>IDE Spyder
зачем?
Аноним 18/03/19 Пнд 09:09:42 #548 №1366387 
>>1364650
разбей свой вопрос по командам
Аноним 18/03/19 Пнд 15:04:07 #549 №1366517 
>>1366386
В дебиане10 как то не густо python IDEшек.
Я привык к eclipse, но что-то в репозитории debian10 не завезли PyDev.
Потестил те какие есть: spyder и eric - все говно.
Остановился пока на vim + python-mode + jedi-vim, ибо кроме подсветки синтаксиса и автодополнения мне вроде ничего и не надо. Зато оно вообще не тормозит и я могу его удобно запускать на удаленном ПК. Предыдущие IDE запускал перенаправлением X по сети (нужен был 3.7 петон, когда в локальной ОС он 3.5)
Аноним 18/03/19 Пнд 15:21:25 #550 №1366525 
>>1366517
>Остановился пока на vim + python-mode + jedi-vim
Следующая остановка spqcemacs, брат жив, зависимость есть.
Аноним 18/03/19 Пнд 17:43:00 #551 №1366648 
>>1366387
Не понял
Аноним 19/03/19 Втр 14:29:13 #552 №1367042 
Котаны, я в тупике, есть один ооочень плохой json, все пофиксил, кроме одного, есть такие штуки:
'"a": "asdasd \" asdasd \" asdasd"'
При попытке считать это json файл питон видит это как
'"a": "asdasd " asdasd " asdasd"'
Соответсвенно json.loads не может декодировать эту хуиту.
Как фиксить?
Аноним 19/03/19 Втр 18:40:15 #553 №1367151 
>>1367042
А что тебе в результате получить надо? В каком виде строку?
Аноним 19/03/19 Втр 22:40:02 #554 №1367270 
>>1367151
Уже разобался. Ненавижу, блядь, джавистов. То что у них считается валидным json у нормальных людей считается белым шумом.
Аноним 19/03/19 Втр 23:13:06 #555 №1367285 
Чую время переката пришло.
Аноним 20/03/19 Срд 07:43:57 #556 №1367379 
>>1367285
Зачем? Мертвый язык @ мертвый тред
Аноним 23/03/19 Суб 10:11:10 #557 №1368791 
>>1363975
спасибо большое, аноним
Аноним 07/04/19 Вск 14:15:43 #558 №1376684 
изображение.png
Гайс, а поясните по хардкору, не могу нихуя понять. Изучаю питон по АБайтофПайтон, и в общем ещё начало книги, но дошёл до такого примера, на котором застопорился:

def total(initial=5, numbers, keywords):
count = initial
for number in numbers:
count += number
for key in keywords:
count += keywords[key]
return count
print(total(10, 1, 2, 3, 5, 10, vegetables=50, fruits=100))

выдаёт сумму чисел из нижней строчки Print,
181, при этом цифра 5 вначале (initial=5), никак не учитывается - туда хоть 100 можно поставить, если же сделать так:

def total(initial=5,
numbers, keywords):
count = 5
for number in numbers:
count += number
for key in keywords:
count += keywords[key]
return count
print(total(10, 1, 2, 3, 5, 10, vegetables=50, fruits=100))

То цифру 5, которая присвоенна переменной каунт, почему то из суммы вычитает, хотя операций вычитания в коде нет, и на выходе получается результ 176

А если же не декларировать переменную initial функции total вовсе:

def total(numbers, keywords):
count = 5
for number in numbers:
count += number
for key in keywords:
count += keywords[key]
return count
print(total(10, 1, 2, 3, 5, 10, vegetables=50, fruits=100))

Тогда как и положенно цифра пять изначально присвоенная переменной count прибавляется к переменным передающимся функции в нижней строке print и на выходе получается
186
*

почему так?
Аноним 07/04/19 Вск 14:16:22 #559 №1376685 
>>1376684
эм, с разметкой обосрался(
Аноним 07/04/19 Вск 14:28:29 #560 №1376693 
изображение.png
>>1376684
А всё, разобрался, видимо пример в книге некорректный, и то что вначале мы декларируем itial=1:
def total(initial=1, numbers, keywords):
Это всё хуйня, и в итоге initial присваивается значение первой цифры при вызове функции:
print(total(
10
*, 1, 2, 3, 5, 10, vegetables=50, fruits=100))

наебала немножко книженция.
Аноним 07/04/19 Вск 14:29:04 #561 №1376694 
>>1376693
лол, только сейчас дошло что это в коде две звёздочки мне разметку руинят
comments powered by Disqus

Отзывы и предложения