Этого треда уже нет.
Это копия, сохраненная 4 октября 2017 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Всем тредом теребим змия F.A.Q. https://github.com/TheKnightsWhoSayNi/info/wiki/Hat Питончик тхред #1046298 В конец треда | Веб
Всем тредом теребим змия

F.A.Q. https://github.com/TheKnightsWhoSayNi/info/wiki/Hat

Свой код кидайте через https://ideone.com/

Книги: https://yadi.sk/d/tArKKuQu3Kejuq

Прошлый тред: https://2ch.pm/pr/res/1040899.html (М)
#2 #1046435
>>1046298 (OP)
Все ещё вкатываюсь в Питон.
Я правильно понимаю, что в Питоне для функций нет такой хуйни, как передача по значению или по адресу? Просто либо я даю ему immutable переменную, типа int или string, и что бы функция с ней не делала, исходная переменная не изменится, либо даю mutable, типа листа или словаря, и все изменения такой переменной закрепятся и при выходе из функции?
При этом Питону вообще поебать, находится переменная внутри функции или снаружи?
#3 #1046469
Как браться за изучение фулстека на основе питона
может есть комплексные учебники?
И за какой край хватать, что еще изучать?
#4 #1046534
Что почитать про алгоритмы абсолютному нубу? Чтобы не обосраться на собеседовании, когда попросят реализовать красно-черное дерево или написать пузырек
sage #6 #1046605
>>1046298 (OP)
Правда ли, что в этом школьнике сидят одни треды?
#7 #1046607
>>1046435
Я не миможавер, но не очень понял, что ты хочешь сделать.
Про адреса как в си забудь, в питоне же только ссылочки. На объекты в куче. Объект либо мутабелен, либо операции над ним сами создают новые объекты каждый раз.
Вот ты и ссылочки и передаешь. Нужен сайдэффект для иммутабельной? Оборачеваешь в мутабельную и с богом. Но я уверен, что в питоне есть технологии для этого.

Поясните, если я не прав.
#8 #1046609
>>1046607

>Я не миможавер,


Я не питонист. Я мимоджавер.
#9 #1046675
>>1046607
Всё так.

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


Есть, но только в третьем: https://docs.python.org/3/reference/simple_stmts.html#nonlocal
#10 #1046713
>>1046607
Хочешь ебстись с памятью, используй C API, питон это лишь удобная абстракция сишечки
#11 #1046726
Стоит ли сегодня учить питухон для веба? Мимо .NET-чик, мечтающий abandon this sinking ship. PHP хуёвый, ruby не нужен, node.js - может быть. А как дела на змеином фронте?
#12 #1046730
>>1046726
Все переводят питоновские проекты на ГО, иди туда
#13 #1046731
>>1046730
В моём городе на hh специальностей на go примерно 0
#14 #1046735
>>1046731
Ну до жителей мухосрансков (все в россии, что не дс и дс-2), еще не дошел хайп ГО, зачем жить в мухосрансках?
#15 #1046739
>>1046735
Ты реально хочешь чтобы мы все из мухосрансков попёрлись к вам?
#16 #1046740
>>1046730
Вруша, даже в ДС вакансий на го в районе сотни, половина из которых это мэйлсру или го как необязательное преимущество идёт.
#17 #1046743
>>1046740
https://chelyabinsk.hh.ru/vacancy/22044025?query=Golang
На питуне такую зп иметь можно?
Скоро хайп трейн полностью дойдет да рассиюшки
#18 #1046755
>>1046726
Веб разный бывает. Мне для собственных сайтов питон очень подошел, так как есть крутые и почти ни в чем не ограничивающие Flask+SQLAlchemy. Если целишь на серийное ляпанье говносайтов, то тут пэхопэ вне конкуренции. Если интересует в перспективе хайлоад, то тут, пожалуй, стоит учить питон только если будешь работать в ДС или на забугорную фирму, в питере уже вакансий маловато, в пр. милионниках думаю совсем мало.
#19 #1046763
>>1046755

>хайлоад


>не го


Оставьте пифону машобчик\бигдату\датасайнс, на арене хайлоада новый лидер!
#20 #1047055
Как записать перемножение элементов произвольного списка "a" длиной "n" в пистоне ака an-1*an ?
#21 #1047079
>>1046534
бамп вопросу
#22 #1047080
>>1046739
Я вот стремлюсь строго в дс/дс2, потому что в моей 50к мухосрани работы вообще никакой нет. Да и многие мои родственники и знакомые из моей мухосрани собираются в ближайшие 5 лет съебать в дсы.
#23 #1047081
>>1047080
Что за мухосрань?
#24 #1047083
>>1047081
на юге россии
#25 #1047086
>>1047083
А если на удалёнку?
#26 #1047087
>>1047086
На удаленку без опыта работы вряд ли кто меня возьмет, но я обязательно попытаюсь.
Можно, конечно, ежедневно ездить по 4 часа в одну сторону на работу в областной город, но это пиздец
#27 #1047088
>>1047086
Кстати еще у меня интернеты очень хуевые, проводного интернета нет, приходиться пользоваться 3G свистком с лимитом трафика в 30Гб за 700 рублей
#28 #1047089
>>1047088
Че это на питоне можно на 10 гигов хотя бы написать? Особенно если ты трейни
#29 #1047091
>>1047089
Гуглить надо постоянно.
Ну и иногда иногда хочется поаутировать на ютубе или твиче
#30 #1047092
Решил поставить библиотеку pil на винде, вроде все в path указал, а при попытке установить выдает ошибку, в чем же проблема или лучше переходить на линупс?
#31 #1047094
>>1047092
Телепаты в соседнем разделе.
4 Кб, 636x62
#32 #1047096
>>1047094
Да гугл молчит по этому вопросу.
#33 #1047101
>>1046298 (OP)
Аноний, подкинь годных туторов по джанге. Желательно на русском.
#34 #1047104
>>1047096
Полностью скинь выхлоп.
#35 #1047108
>>1047096
Запускаешь из командной строки? Попробуй сменить кодировку
#36 #1047165
>>1047092
На винду многие пакеты собранные есть: скачиваешь колесико и делаешь pip install pillow-*.whl
http://www.lfd.uci.edu/~gohlke/pythonlibs/#pillow
#37 #1047247
>>1047055
from functools import reduce
product = reduce((lambda x, y: x * y), [1, 2, 3, 4])
34 Кб, 357x565
#38 #1047248
Сап двач, тут вопрос появился: какая из реализаций более красивая и правильная, на ваш взгляд, учитывая то, что аргументов в классе будет не два, а несколько десятков?
#39 #1047317
>>1047101
request.bump(1047101)
print ("Бамп реквесту")
#40 #1048045
Пытаюсь в сетевое программирование, но дальше простых клиент-сервер, принимающих разную приблуду пока не реализовывал. Может есть какие то задачки или опен соус проекты? Помогите
#41 #1052022
>>1048045
двачую, та же шняга
#42 #1052351
>>1046735
Го - от слова Говно
#43 #1052406
>>1047248
Это что, будет первая игра на питоне?
#44 #1052599
>>1048045
Торрент-клиент
97 Кб, 600x380
#45 #1052699
>>1046298 (OP)
Не знаю туда ли обращаюсь. Но посоветйте либу, либо что-нибудь подобное.
Вкратце: у меня есть десяток процессов, каждый из них отдает статистку в виде нескольких значений. Мне надо эти значения рисовать в виде красивого интерактивного графика в реальном времени с допусками и прочими ништяками. Этакой дашборд. Не важно: гуй, веб. Главное чтобы максимально просто и стэнделон, будет на нескольких компах крутиться.
Почему питон? Просто система управления процессами уже накостылена на нём, не охота зоопарк раздувать.
#46 #1052721
>>1052699
Highcharts
#47 #1053149
>>1046735
package main
import "fmt"
func main() {
fmt.Println("Hello, Mukhosransk")
}
Вряд ли я полюблю Гоу из-за такого старперского синтаксиса.
#48 #1053172
>>1052406
Игры на питоне давно уже есть
https://www.youtube.com/watch?v=v33KkLiq7nI
Когда роешься в файлах игры, то увидите расширения pyw
#49 #1053332
>>1046298 (OP)
С питоном не имею ничего общего, работна с html/css/js предложили работу и сделать небольшое тестовое задание извлечь данные из json и поработать с ними, что-то у меня не получаетя, гуглил, но так и не понял в чём проблема.

import json
ath = 'sales.json'

with open(path, 'r') as sales_data:
data = json.load(sales_data)
print(data['event_date]'])

Выдаёт ошибку - TypeError: list indices must be integers, not str.

Но если при выводе информации к data не дописывать аргумент, всё работает.
#50 #1053336
>>1053332

>Выдаёт ошибку - TypeError: list indices must be integers, not str.


Загуглить по ошибке не вариант?
#51 #1053344
>>1053336
Загуглил и на буржуйском тоже, варианта решения так и не нашел, предлагают луп данных самих на себя. Поэтому и решил спросить в треде, может я что-то упустил или не понял.
#52 #1053356
>>1053332

>print(data['event_date]'])


>]']


Мой лексический анализатор на экстрасенсорных нейросетях видит тут подвох.
#53 #1053358
>>1053356
Никакого подвоха тут нет, будет просто кейеррор если такого ключа 'event_date]' и правда нет
, но у того хуя там не словарь, а список, поэтому у него и вылетает TypeError.
#54 #1053436
Как запустить скрипт из консоли (linux), без указания упоминания интрепритатора , те вмест python3 script.py писать просто script.py ?
#55 #1053437
>>1053358
Будь добр обьясни мне jsмакаке что не так, то я проебался там print(data['event_date']) но я всё равно не понял прикола.
На сайте питона, в инструкции по модлю json ничего на этот счёт я не нашел.
#56 #1053440
>>1053436
Никак, это невозможно.
#57 #1053441
>>1053436
А еще лучше, присвоить ему какое то имя, скажем sc, и что бы из любого места можно было вызвать этот скрипт командой sc
#58 #1053466
>>1053440
Ну чыво ты такой. Ладно с этим разобрались, а как с этим >>1053441
Баш не знаю.
#59 #1053470
>>1053466

>Баш не знаю.


Узнай.
#60 #1053570
>>1053436
1) Впиши в начале файла #!/path/to/python3
2) Сделай файл исполняемым при помощи chmod.
3) Можешь переименовать и убрать расширение, файл всё равно будет запускаться ./filename
4) Если хочешь запускать без указания пути, то добавь директорию в PATH.
#61 #1053572
>>1053437
Сам json покажи.
#62 #1053589
Анон, почему в этом коде, если использовать решение со списком (закомментированный код), при подаче второй строки равной первой в списке появляются дубли? Там же выполняется проверка not in, почему предыдущие вхождения игнорируются для второй строки?

Условия задачи, платформа Stepik https://goo.gl/45Z6ze
Решение https://ideone.com/HsQS8n
#63 #1053633
>>1053570
Да же раскурил, но все равно спасибо.
341 Кб, 921x1417
#64 #1053657
ВОРВАЛСЯ НАХУЙ.
Смотрим пикрелейтид. Есть задание, есть пока только реализация парсера и даже она не закончена.
Ответьте на мои вопросы плз:
1)Как убрать пустые строки между usage,description и help-message?
2)Как вообще изменить usage и help, чтобы 'usage' было с большой буквы (как пример в книге), а в help-e вместо 'optional arguments' было 'Options'. Ну и order поправить надо.
ХЕЛП МИ ПЛИЗ.
Вот ещё ideone ссылка на всякий: https://ideone.com/EMNqoN
#65 #1053663
>>1053657
Забыл написать 1 штуку: может это связанно с тем, что я использую не optparse, а argparse? Я документацию уже перечитал, нет там ничего про какое-либо нужное мне форматирование вывода usage,description и help-ов.
#66 #1053822
>>1053657

> чтобы 'usage' было с большой буквы (как пример в книге)


Чёт проиграл. Ты должен писать реализацию, а не буквы править, додик.
#67 #1053828
>>1053822
Ты долбаеб или да? Реализация есть, парсер на месте, осталось только буквы и поправить.
#68 #1053833
>>1053828
Пиздец вкатывальщики тупые пошли.
128 Кб, 605x675
#69 #1053880
ЧТО Я ДЕЛАЮ НЕ ТАК
УЖО ДВА ЧАСА ЕБУСЬ С ЕНТОЙ ХУЕТОЙ РИИИИ
#70 #1053881
>>1053880
Ошибка в коде.
#71 #1053895
>>1053880
Зелёный детектед. Нельзя быть таким тупым.
#73 #1054065
>>1054057
Пиздец, и ты за это время сам не догнал решение проблемы? Тебе же написали, что твой жсон транслируется в питоновский список к которому ты пытаешься как к словарю обратиться.
#74 #1054091
Что по джанге можно почитать, вроде дохуя книг, а всё какое-то говно с блогами, заебало уже.
#75 #1054096
>>1054091

>какое-то говно с блогами


ЭТО ЗНАТЬ НАДО! ЭТО КЛАССИКА БЛЯДЬ!
#76 #1054099
>>1054096
да уже сколько можно эти блоги писать, заебало
#77 #1054101
>>1054099
Пиши имиджборды.
#78 #1054102
>>1054091
Напиши магазин с регистрацией, форумом, службой поддержки, api и своей админкой
В django by example подобное есть
#79 #1054122
>>1054102
Вот на эту книгу смотрел, вроде интересно, но там блять столько jquery, которого я ваще не понимаю.
Ну да похуй, буду с ним разбираться походу дела тогда.
#80 #1054226
>>1054065
Я пытался сделать со списка словарь, гугления ничего не помогло, в питоне вообще ноль, сейчас прохожу курс на кодкадеми, потому что доки питона мне не дали ответа, а книгу читать в 400стр времени нет.
Если кто-то даст решение, а не просто будет говорить что я туп и в душе не ебу что делаю, буду благодарен.
#81 #1054227
>>1052721
Это же Javascript, а он просил на Питоне
#82 #1054231
>>1054226

>книгу читать времени нет


>а на кодекадемию время есть


Гуглить не быстрее будет, не?
#83 #1054232
>>1054226
Еще раз, у тебя из жсон-объекта питон делает список с одним элементом который и является словарем к которому ты пытаешься обратиться, print(data['event_date]']) замени на print(data[0]['event_date]']) или лучше перед этим ебани data = data.pop() если у тебя этот словарь единственный.
#84 #1054237
>>1054101

>имиджборды


На Джанге?
#85 #1054240
>>1054237
Why not?
#86 #1054243
>>1054240
Эта имаджборда будет похожа на блог?
249 Кб, 480x360
#87 #1054828
У меня тупой вопрос. Можно ли сделать питон менее строгим?
После многолетнего опыта с башем я осваиваю айпитон как скриптовый язык для администрирования. Мне всё очень нравится, но любая нештатная ситуация приводит к падению. Например:
1) Нет файла для открытия: баш ругнётся и будет крутиться дальше дальше, питон упадёт.
2) Попробуешь прочитать необъявленную переменную: баш подсунет пустую строку, питон упадёт.
3) Дёрнул несуществующую переменную: баш скипнет, питон упадёт, и так далее.
Есть ли какие-нибудь способы смягчить его поведение, кроме как оборачивать каждый второй пук в трай-кэтчи и заранее продумывать обработчики на все случаи жизни? Какой-нибудь параметр при запуске?
#88 #1054831
>>1054828

>3) Дёрнул несуществующий метод


офк
#89 #1054839
>>1054828
Да тебе на пхп переползать надо с такими запросами.
#90 #1054846
>>1054828
Нельзя и ненужно.
#91 #1054853
>>1054839
в пхп нет россыпи системных либ

>>1054846
Почему тогда в баше или перле это норм?
В баше можно загунть бесконечный луп с проверкой хоста и быть уверенным что он отработает. А питон нельзя: вот в 3 часа ночи у тебя хостнейм не отресолвится перезагружающимся днсом и всё упадёт.
#92 #1054865
>>1054853
Потому что баш и перл - говно.
Обработка ошибок должна быть явной. Если что-то пошло не так, лучше сразу об этом узнать. Если ты запустил скрипт, а там половина строк выполнилась, а половина нет, и хуй пойми в каком состоянии у тебя теперь система - это нихуя не норма.

>В баше можно загунть бесконечный луп с проверкой хоста и быть уверенным что он отработает. А питон нельзя


Тело цикла в try except завернул - и он уже никогда не упадет, если так надо.
#93 #1054876
>>1054865

>Потому что баш и перл - говно.


Какая категоричная вебмакака.
Ладно, я вас понял. Буду оборачивать всё что плохо лежит. Что толку в лаконичном синтаксисе, если на каждый обработчик надо 3 дополнительных строки расходовать?
#94 #1054880
>>1054876
Что бы ты знал, что именно происходит, питон про читаемость, а не про экономию строк
20 Кб, 667x676
#95 #1054908
Пишу прогу на питоне, которая будет генерировать решаемые квадратные уровнения с действительными корнями.
За основу взята теорема виета, вернее, ее соблюдение.
Но в самый ответственный момент оператор and перестает работать как надо и начинает работать как or - т.е. выбирает только одно из двух необходимых неравенств.

Код: https://pastebin.com/V0HTaxgb
Пикча: выводятся значения корней x1 и x2, названные в коде как x и xx. Здесь отчетливо видно, что прога подобрала решение только к одному неравенству, а на другое положила хуй.

Что делать, как бороться?
#96 #1054920
>>1054908

>while huipizda:


>...


>else:


>...


интересная конструкция, даже в голову не приходило, что так написать можно.
#97 #1054937
>>1054920
Убрал else, результат тот же. Цикл вырубается, когда удовлетворяется одно из двух равенств.
#98 #1054945
>>1054937
блок else в контексте while выполняется, когда цикл завершается естественным образом (выражение становится равно false), тут не одного break, так что else тут излишен
#99 #1054946
>>1054908
Так происходит, потому что тебе нужен оператокр OR, а не AND. Цикл с AND выполняется, пока оба неравенства верны. Как только одно из них становится неверным (то есть удовлетворяется часть теоремы), та часть выражения вычисляется в False и происходит выход из цикла. Таким образом, чаще всего b или c оказываются случайными числами.

А вообще, никаких циклов здесь не нужно:

import random
x1 = random.randint(1, 100)
x2 = random.randint(1, 100)
b = -x1 - x2
c = x1 * x2
#100 #1054954
>>1054946
Поменял на or, прога начала выполняться.
Пошел курить - выполняется, пришел - выполняется до сих пор.
И хуй поймешь, залупилась она или просто ИЩЕТ так долго.
#101 #1054960
>>1054946
>>1054954
Заебись, на randint работает как часы. Спасибо!
#102 #1054965
>>1054954
Ищет долго. Вероятность угадать сразу четыре параметра очень мала. Возможных комбинаций параметров у тебя 163x163x19x19, а уравнений, удовлетворяющих теореме Виета с целыми корнями от -9 до 9 и целыми коэффициентами b и c от -81 до 81 всего 361. (подразумевая, что а = 1)
#103 #1055045
https://pastebin.com/p7VWAeAj
Блять нихуя этот код не понимаю.
Вот там написано if not cart тогда сделать пустой словарь из cart и self.session[settings.CART_SESSION_ID]
Но в чём смысл, если not cart будет только тогда когда в self.session[settings.CART_SESSION_ID] пустой словарь ? То есть они и без этого условия либо будут пустым словарем, либо нет, нахуй там этот if надо ?
#104 #1055056
>>1055045
self.session.get(settings.CART_SESSION_ID) вернет settings.CART_SESSION_ID если он есть, либо None, если его нет. Дальнейший if ловит именно эту ситуацию. Весь код можно упростить до

self.cart = self.session.get(settings.CART_SESSION_ID, {})
#105 #1055058
>>1055056

> self.session.get(settings.CART_SESSION_ID) вернет self.session[settings.CART_SESSION_ID] если он есть

#106 #1055061
>>1055056
В принципе логику понял, но не могу понять как его вообще может не быть, если он задан в settings.
Спасибо.
#107 #1055093
>>1055045
Пастабин капчу требует.
Найди другое место для выкладывания кода.
#108 #1055096
>>1054828
try .. except
with ...
Проверка переменных (это хоть и скриптовый, но язык программирования - и ты программируешь, поэтому научись думать как программист и помнить свои переменные)
#109 #1055291
>>1054227
В браузере будешь питон исполнять, клоун?
#110 #1055292
Пайтон-боги, последняя надежда на вас!
Есть сайт на ебучем aspx: http://bankrot.fedresurs.ru/Messages.aspx
Нужно спарсить сайт с помощью Selenium'а и я не могу, блять, тупо кликнуть на кнопку. Нужно парсить только "Сообщение о судебном акте", т.е. я открываю сайт (с помощью Селениума, разумеется), кликаю на "Тип сообщения", подгружается какой-то фрейм и я не могу, блять, обратиться к элементам внутри этого фрейма. То есть ни селениум, ни jquery (пытался обратиться к ним через консоль) не видны, хотя в коде они есть. Однако при некоторых действиях (я точно не понял каких именно, но например при клике на какую-нибудь раскрывающуюся кнопку) эти элементы становятся, блядь, видимыми. Т.е. только после того как вручную на что-нибудь внутри кликну -- всё нормально.

Пытался эмулировать Селениумом клик по координатам -- тоже нихуя не вышло. Анончики, помогите пожалуйста.
169 Кб, 1538x978
#111 #1055403
>>1055292
Не нужен селениум, можешь и сам запросики кидать, пикрелейдед.
__PREVIOUSPAGE и __VIEWSTATE из сорцов страницы берешь, а дальше сам разберешься, requests тебе в помощь.
#112 #1055412
>>1055291
Нахуй ему браузер, если он про питон спрашивал, пидар?
#113 #1055421
>>1055412

> , веб.

#114 #1055438
>>1055403
Там вроде куков-хуюков дохуя и я даже разбираться не стал.
#115 #1055448
>>1055438
Они в запросе ненужны.
#116 #1055454
>>1055449
Я сейчас засунул руку в анус, и теперь она в говне. Почему так???
#117 #1055457
>>1055449
Даже не знаю, что на это и ответить.
#118 #1055461
>>1055449
Потому
14 Кб, 369x224
#119 #1055490
Почему он ругается?
#120 #1055493
>>1055490
Скобочка
#121 #1055494
>>1055493
Увидел, спасибо
16 Кб, 417x194
#122 #1055495
>>1055493
Поставил, все равно ругается, но уже на промежуток перед print.
3 Кб, 396x127
#123 #1055498
>>1055495
Он на каждую строчку ругаться начал. В чем дело?

кодировка блокнота, на всякий случай
#124 #1055499
>>1055495
Ещё скобочка.
#125 #1055501
>>1055498
Еще скобочка в первой строке
%%ты тупой вкатывальщик раз не понимаешь, что количество открывающих и закрывающих скобок должно быть равно
#126 #1055502
>>1055501
Надеюсь, что я не тупой, а просто слепой еблан.
Спасибо.
#127 #1055504
>>1055495
Каждый раз импортировать кэшированный math при итерации, кайф
А еще while True, который оканчивается break'ом, ты выиграл соревнование по говнокоду
Иди синтаксис учи
#128 #1055506
>>1055504
While true тут просто заглушка, с которой удобно из блокнота вставлять в IDLE.
#129 #1055507
>>1055506
Ну скачай pycharm, он бесплатный, хули ты
#130 #1055508
>>1055506
I P Y T H O N
P
Y
T
H
O
N
#131 #1055647
Решил учить питон по шапке, боюсь на английском читать, есть вопрос, в книжке Лутца написали reverse упорядочивает по убыванию, разве он не просто переворачивает список/массив?
#132 #1055649
>>1055647

>в книжке Лутца написали reverse упорядочивает по убыванию


Что-то сомневаюсь, что там так написано, хоть и Луца не читал. Скорее всего список сортируют с параметром реверс=Тру, или сперва сортируют а потом ебашат реверс.
91 Кб, 1280x720
#133 #1055652
>>1055649
Вот так вот
#134 #1055653
>>1055652
Код сам
L=['bb', 'aa', 'cc']
L.reverse()
print (L)
Вот вывод ['cc', 'aa', 'bb']
#135 #1055654
>>1055647
Если хочешь перевернуть, то делай так
arr[::-1]
#136 #1055659
>>1055652
Его сначала отсортировали, потом перевернули, как сказали выше. Написано действительно запутанно.
#137 #1055660
>>1055652
Там по-ебанутому предложение составлено, ключевые слова: в этом примере
#138 #1055665
>>1055659
Понял, спс, теперь работает
>>1055654
А в чем разница, если без сортировки можно и .reverse перевернуть список?
#139 #1055670
>>1055647
Не читай лутца, он пидорас и хуесос, каждый знает об этом в треде.
Лучше прочти укус питона, а затем ебни саммерфилда "программирование на python 3 подробное руководство", можешь после python cookbook прочитать из шапки
#140 #1055675
>>1055665
реверс - меняется сам список
a[::-1] нужно когда тебе список менять не надо
#141 #1055678
>>1055670
Тоесть из шапки хабровскую статью можно выкидывать нахуй и читать, то что в books гитхаба?
#142 #1055680
>>1055678
Не слушай того анона, он пиздит про лутца
#143 #1055682
>>1055680
Нет, не пиздит, Луца читать ебанешься, сплошная вода.
#144 #1055683
>>1055682
Тут согласен с тобой, 3 главы он "тягал кота за яйца".
анон, который этот срач завел
#145 #1055684
А что за мем про НАСА? Это всё из "Укуса Питона" пошло?
#146 #1055687
>>1055678
Live hack
Читай Лутца лутце на ангельском, для тренировки последнего.
#147 #1055688
>>1055687

>Live hack


Я вот лутца не читал, теперь видишь результат
lifehack
#148 #1055692
def prnStr( s ):
s = '// ' + s
print( s )
#149 #1055694
def prnStr( s ):
s = '// ' + s
print( s )
#150 #1055696
def prnStr( s ):
. . . . . . . . . . s = '// ' + s
__________ print( s )
#151 #1055700
>>1055692

> s = '// ' + s


> s =


> =

#152 #1055705
>>1055508
Чем хорош?
#153 #1055709
>>1055705
Поставь и увидишь.
#154 #1055714
>>1055709
Сначала хочу узнать зачем его ставить.
#155 #1055715
>>1055714
Чтобы узнать чем он хорош.
#156 #1055718
>>1055715
Ну я и пытаюсь здесь узнать.
#157 #1055721
>>1055718
Так пытайся не здесь узнать, а у себя в консолечке.
2,5 Мб, 2448x2448
#158 #1055723
Что за пиздец, товарищи. Накопилось виртуальных окружений и нодовских модулей. Кто-нибудь удаляет неиспользуемые время от времени? Кажись, это будет теперь регулярная процедура для меня, как писюн помыть.
#159 #1055725
>>1055723
Скриншоты делать не умеешь?
#160 #1055750
>>1055721
У меня в консолечке пишет

>Python 3.6.1

#161 #1055752
>>1055750
Рад за тебя. Что сказать то хотел?
#162 #1055757
>>1055752
Что хорошего в IPython?
#163 #1055760
>>1055757
Поставь и увидишь.
#164 #1055774
>>1055760
Хояется знать зачем
#165 #1055777
>>1055774
Поставь и узнаешь.
#166 #1055784
>>1055774
Чтоб дрочить на phd которые ipython --notebook пользуются
#167 #1055800
>>1055777
Но с какой целью, чем он лучше уже стоящего?

>>1055784
Что такое phd?

Блин, только новая капча начала мне нравиться... меньше цифр вводить, иногда 1 только, да еще натаскивает меня в сложении-вычитании-умножении-делении на автомате - полезно же ...и тут ее сменили.
#168 #1055804
>>1055784
Не только ptpython охуенен.
https://www.youtube.com/watch?v=XDgIDslyAFM
#169 #1055815
>>1055804
Это же jedi умеет и любой редактор с jedi плагином
#170 #1055831
>>1055804
В чем соль? Полупрозрачность? Так это игрушка - глаза устанут, обратно непрозрачным сделаешь.
#171 #1055839
>>1055831
У меня терминал полупрозрачным был, мне норм. Ну, точнее, на 70-80% НЕ прозрачный.
А вообще, не выёбывайтесь и пишите в виме. Все эти свистоперделки нахуй никому не нужны.
#172 #1055843
>>1055839

>А вообще, не выёбывайтесь и пишите в виме


Ага, только сперва пропердольтесь с подключением десятка плагинов, потом изучите документацию к каждому, ну а там глядишь через недельки 2 и начнете писать код. Ничего не забыл?
#173 #1055850
>>1055839
Vim под виндой?
А Emacs чем хуже?
#174 #1055852
>>1055843
Если бьы только документацию. Ты сначала клавиши к нему выучи. А то даже выйти из редактора не сможешь, не зная как. Помню, я я на компе Reset нажималб чтобы из него выйти.
#175 #1055866
>>1055852
Ну с этим особых проблем нет, по-началу только кажется диким такой способ управления, но потом когда понимаешь суть, становиться легко. постоянно пользуюсь вимом как редактором, но вот начать писать на нем код, как-то не получается, проще в иде-шке. Как представишь, сколько там надо пилить и изучать, желание как-то пропадает.
#176 #1055875
>>1055850
>>1055843
Есть куча плагинов, которые включают vim-мод в вашей любимой IDE (например, в qtcreator есть).

>А Emacs чем хуже?


Свистоперделками.
#177 #1055939
>>1055804
Очкастый хуесос учит рисовать синусоиду в juPyter. Лойс
#178 #1056006
>>1046298 (OP)
Вопрос из прошлого треда, а то я и не заметил бамплимита.

>Джангисты, вечер в хату. У меня проект с двумя приложениями внутри. Модели обоих связаны друг с другом и как ForeignKey и ManyToMany. Проблема в том, что когда пытаюсь всё это мигрировать получаю CircularDependencyError. Как эту проблему обойти при миграции я знаю, нужно просто один раз закомментить ForeignKey и ManyToMany поля и мигрировать, а потом раскомментить и снова мигрировать.


Вопрос в другом. Что это вообще за CircularDependencyError, и почему она возникает? Гугл даёт только ссылки на прямое решение проблемы, но я хочу копнуть глубже.

>Я так понял, что раз она появляется, значит я неправильно спроектировал базу данных для проекта? Что делать, чтобы она больше не возникала?

#179 #1056031
>>1055875
Но зачем тогда к Vim подключать свистоперделки, если Emacs не нравится именно свистоперделками?
#180 #1056032
>>1056006

>Circular


Говорит о зацикливании ссылок (ссылаются сами на себя)
#181 #1056071
>>1056032
Странно. Вроде, не ссылаются. Имеешь ввиду, что модель "А" ссылается на модель "А" или тут что-то сильно сложнее?
#182 #1056072
>>1056071
Поле модели А ссылается на поле в модели Б, в свою очередь поле в модели Б ссылается на поле в модели А.
#183 #1056079
Читаю тут про MVC и наткнулся на указание, что контроллеры нужно делать как можно тоньше, а всю логику совать в модели
Я правильно понял, что в таком случае в джанге вьюхи стоит использовать только для принятия данных из форм, маршрутизации и простых действий с моделями, типа удаления\добавления\изменения пользователем
#185 #1056092
>>1056089

>At the end of the day, of course, it comes down to getting stuff done. And, regardless of how things are named, Django gets stuff done in a way that’s most logical to us.


Главное, что бы было максимально логично и если логичнее будет чуть расширить логику вьюхи, то можно чуть "утолстить" ее, я правильно понять?
#186 #1056107
>>1056072
Понял, спасибо большое. Добра тебе, любви, больших прибылей и процветания.
#187 #1056110
>>1056031
А я что-то говорил про "подключать свистоперделки к виму"?
#188 #1056134
>>1056092
Ну в джанге, насколько я понял, допустимо помещать логику и в модели и во вьюхи. Всё, что свзяно с моделями - в модели, всё, что с вьюхами - во вьюхи. При этом я видел проекты, в которых логика вынесена в отдельный файл, вроде, utils.py. Это, вроде, тоже нормальная практика.
Но давай подождём опытных джангистов, пусть они пояснят нам, как правильнее.
#189 #1056245
>>1056110
Ну я только и слышу что про плагины к виму которые умеют то да сё, синтаксис, удобства, антидистракшн мод и т.п.
А на голом имхо не намного лучше, чем в любом простом текстовом редакторе.
#190 #1056303
Поясните нубу за отправку емейлов в джанге
https://docs.djangoproject.com/en/1.11/topics/email/#quick-example
Вот там пример, что просто пишешь от кого и всё, но ведь так реальный емейл не отослать?
Потому что у меня celery выдает ConnectionRefusedError, там сначало надо какой-то емейл подконектить, да ?
#191 #1056304
>>1056303
Хотя пишет, что оно юзает локалхост для отправки, то есть должно работать получается?
#192 #1056305
>>1056304
Наверно тебе нужен почтовый сервак на локалхосте, как считаешь?
#193 #1056307
>>1056303
Поставь локальный mail-сервер для своего спама, потом провайдера твоего внесут в черные списки и забанят, а он тебя сдаст ментам.
#194 #1056308
>>1056305
не лишено смысла
>>1056307
дв я ж блять сам себе отправляю только для теста
#196 #1056315
>>1056310
Да, так я уже делал, ща настрою наверное гмейловский акк на отправку.
#197 #1056339
А если у меня некоторые настройки сенсетив лежат в отдельном файле, как мне запилить их в settings.py, чтобы не палить всё ?
в джанге
#198 #1056342
>>1056339
а всё, разобрался, я дебил, пора спать
#199 #1056591
>>1055682
Я всю первую книгу прочитала. Очень помогла мне. Остальные две не осилила.
#200 #1056950
Посоветуйте книгу по использованию алгоритмов в третьем пифоне, что бы если какой либо метод или алгоритм был уже реализован в стандартной библиотеке, то об этом явно говорили и рассказывали как этим пользоваться
#201 #1056961
>>1056950
Какие-то у тебя странные желания, не проще самому документацию по стандартной библиотеке глянуть? Зачем пересказы читать?
#202 #1056964
>>1056961
Я имел ввиду не это, основа книги это алгоритмы, но если он уже реализован в стандартной библиотеке, то про это пассказывалось
Например описание бинарного поиска и реализация, а потом рассказ про библиотеку bisect
#203 #1056967
>>1056964

>Например описание бинарного поиска и реализация, а потом рассказ про библиотеку bisect


Так бери любую книгу по алгоритмам, читай и юзай эту репу для примеров https://github.com/TheAlgorithms/Python
#204 #1056973
>>1056967
Грокаем алгоритмы сойдет?
#205 #1057042
Кто-нибудь пилил пейпал на своем сайте в джанге.
запилил всё с помощью django-paypal, всё вроде идёт гладко, но IPN не возвращается. Пишет пендинг и всё
В причине написано
Pending reason: unilateral
в инете пишут, что неправильный емейл получателя указан, но он правильный.
#206 #1057063
Как в питоне производится обмен переменными таким образом:
a,b = b,a
Тип заводится для каждой переменной копия?
77 Кб, 1454x471
#207 #1057072
>>1057063
Не совсем
28 Кб, 295x260
#208 #1057073
>>1057063
Заводится массив, который наполняется значениями (b,a).
#209 #1057075
>>1057073
Ты совсем не понимаешь смысл распаковки/упаковки переменных
#210 #1057076
>>1057075
видимо да
#211 #1057078
>>1057072

>ROT_TWO


>Swaps the two top-most stack items.


Вот интересно, как этот своп и происходит
#212 #1057080
>>1057078
Можешь открыть исходники пифона на си и посмотреть, там это написано
#213 #1057084
>>1057078

>Вот интересно, как этот своп и происходит


Так и происходит. Берется адрес верхнего и следующего пайобджекта из стека и меняются местами.
https://github.com/python/cpython/blob/master/Python/ceval.c#L1237
#214 #1057096
Если есть год работы в пхп-шном тырпрайзе, в жангу долго въезжать? Питон учил год назад для алгоритмов и ковыряния вилкой.
#215 #1057098
>>1057096
В энтерпрайзе пыхыпэ нет. Так и пиши:галерный раб, опыт веслания полгода. Хочу сменить шлюпку на презентабельную лодку.
#216 #1057099
>>1057098
Да хоть какой раб, мне все равно. Я просто не знаю, куда двигаться.
#217 #1057146
Сам, аноны. Помогите выбрать - SQLite, MySQL или PostgreSQL? Суть - хочу сделать бота в телеграмме с рассылкой расписания пар в универе, и не придумал ничего умнее, чем селектать это расписание из бд. Так вот, что из перечисленного выбрать?
#218 #1057148
Аноны, как сделать, что бы chr() декодировал каждую строку, типо такой:
12
34
56
78
89

Если можно, то обьясните ваш ответ в кратце
#219 #1057151
>>1057146
Для этого sqlite подойдет, данных у тебя не больше 10 мегабайт, нагрузки особой нет и сложной логики тоже
#220 #1057153
>>1057151
Хочу вкатиться в базы, что нужно перво-очередное?
#221 #1057154
>>1057153
Ну попробуй MySQL поковырять, потом на Postgres переходи
#222 #1057156
>>1057151
Спасибо, анон. Так и сделаю.
#223 #1057158
>>1057153
Почитай Дейта - теория баз данных. Попутно изучай SQL. Все.
#225 #1057179
>>1057154
А чем он sql отличается? Я еще тут курсы sql иньекций нашел, они ведь тоже не будут лишнее?
#226 #1057180
>>1057158
Спасибо
#227 #1057181
>>1057179
Лол, sql это язык запросов, а mysql это база данных

>sql иньекции


Это было популярно в 2010
#228 #1057185
>>1057181

>Это было популярно в 2010


Рили?
https://www.owasp.org/index.php/Top_10_2017-Top_10
#229 #1057186
>>1057185
Разве что для пыха и одностраничников это подойтет, в остальных языка избежать sql иньекции очень просто
#230 #1057187
>>1057185
Щас бы на топ-сайтах найти скуль...
#231 #1057198
>>1057186

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


А причем тут язык? Вот тебе с питоном пример.
https://www.cvedetails.com/cve/CVE-2012-0805/
https://www.cvedetails.com/cve/CVE-2014-0474/
>>1057187
Ну это вообще пушка.
1 Кб, 64x123
#232 #1057203
>>1057198
Только в одном из примеров есть Sql Injection и он из 2012
#233 #1057497
>>1046298 (OP)
Настала осень, и тред на нулевой почти не появляется. Оказывается как много юных вкатывальщиков тут сидело.
#234 #1057498
Как вкатиться во фриланс и начать получать бабло?
#235 #1057502
>>1057498

>фриланс


>бабло


Выбери что-то одно.
#236 #1057503
Аноны, тут позвонили и на собес зовут что бы "писать новые, дополнять старые примочки к CMS", предлагают приехать со своим ноутом и "на коленке развернуть джанго-проект". Поэтому есть вопросы:
1) что за "примочки" такие? Парень мне так и не ответил.
2) небольшой опыт с джангой есть(1.5 коммерческих прожекта написанных в одно лицо), что бы такое специфическое почитать под то на что зовут?
3) обязательно на коленках у него будет сидеть? Как отказаться культурно, если не хочется?
#237 #1057504
>>1057503

>предлагают приехать со своим ноутом


Шли нахуй, это дно.
#238 #1057505
>>1057503
Ну тип плагины писать, чо ещё-то можно придумать к CMS
#239 #1057515
>>1057504
Для общего развития схожу, до начала работы еще месяц.
>>1057505
Ну ок, спасибо, погуглю
65 Кб, 560x416
#240 #1057534
Сап. Как выбрать обойти дерево из ul & li элементов на html странице? Если выбирать узлы через дочерний селектор, то надо прописывать полный путь от вершины дерева, вершина при этом должна иметь класс/идентификатор/тег, который отличается от остальных узлов. Полный путь к узлам одного УРОВНЯ ,например, будет выглядеть как #root>ul>li>ul>li... Чтобы получить доступ к конкретному узлу я использую цикл for-in, который перебирает участки дерева полученные через response.css(node). Проблема в том что в поддеревьях невозможно использовать полный путь.

Использую scrapy.
#241 #1057536
>>1057534
А хоть и глупенький, но упорный. Я думал ты уже сдался, лол.
28 Кб, 604x316
#242 #1057544
>>1057536
Слышал сказку про паровозик, который смог?
#243 #1057547
Кто-нибудь может мне подсказать какого хуя гит пушит файлы которые лежат в .gitignore?
Пишарм подсвечивает, что файл серый, пушится не должен, но он всё ранво пушится, какого хуя?
#244 #1057549
>>1057544
Ну удачи, только ты в курсе, что по урлу который ты парсишь карта форумов через жс подгружается?
#245 #1057551
>>1057549
Scrapy каким-то образом понимает это и грузит полностью всю страницу. По деревьям можешь совет дать?
#246 #1057555
>>1057551
С жсом я ошибся, зачем тебе дерево? Выбирай xpath-ом категории и проходись по каждой.
#247 #1057563
Дерево потом в морде выводить буду с возможностью выбора скачивания конкретных форумов, слежением за обновлениями и т.п. Xpath не смотрел (объем документации отпугнул) , хотел через css попробовать сделать.
#248 #1057564
#249 #1057568
>>1057555

>С жсом я ошибся


Кстати, если не js, то почему там индикатор загрузки работает и карта позже загружается?
#250 #1057580
>>1057568
Потому, что жс там потом тупо DOM дергает, все данные уже есть.
#251 #1057583
>>1057580
А как ты это нашел?
17 Кб, 979x512
#252 #1057633
Кто-нибудь сможет объяснить, как работает ебучий питон?
Почему в первом случае ссылки не указывают на один объект, а во втором указывают? Это появляется только при пробелах в строках?
#253 #1057635
Вечер добрый, Аноны. Нужен ваш совет. Скачал я пак с книгами из шапки, но не знаю с чего начать. Как человеку никогда не программировавшему, с чего начать изучение?
10 Кб, 334x115
#254 #1057637
>>1057633
А почему тебя это так волнует?
#255 #1057638
>>1057635
С книги a byte of python - на русском называется укус питона. Не факт, что она есть в паке из шапки.
#256 #1057639
>>1057635
Начни с себя. Разберись, зачем оно тебе надо и надо ли вообще.
#257 #1057640
>>1057637
Мне просто интересно почему так? Ебанутая система выделения памяти на объекты?
#258 #1057643
>>1057640
Оптимизации в интерпретаторе, не используй is.
#259 #1057645
>>1057640
А если конкретно, то вот нагуглил как это работает в случае строк. https://stackoverflow.com/questions/28329498/why-does-a-space-affect-the-identity-comparison-of-equal-strings
#260 #1057647
>>1057638
Уже скачал. А что дальше делать? Выбирать направление в котором развивать познания?
#261 #1057648
>>1057643
А что использовать, если нужно будет сравнить ссылки? Или is надо использовать только при сравнении с None?
#262 #1057649
>>1057647

>А что дальше делать?


Прочитать ее и следовать пикче путь джуниора из оппоста
#263 #1057651
>>1057639
Хочу в блокчейн вкатиться, на уровне хобби. Времени свободного много появилось, решил увлечься чем-то.
#264 #1057652
>>1057649
Ок. Спасибо.
#265 #1057653
>>1057648

>А что использовать,


==, isinstance
#266 #1057654
>>1057653

>==


Так оно долго работает на больших объектах?

>isinstance


Оно же только проверяет тип?
#267 #1057657
>>1057651

>Так оно долго работает на больших объектах?


Чего? На каких еще больших объектах?

>Оно же только проверяет тип?


Она сравнивает типы анологично type(a) == type(b)
#268 #1057698
О курва! Я пердоле! Вложенные nth-child работают не везде!
530 Кб, 1920x1040
#269 #1057706
>>1057698
Прошу прощения. Пока не разобрался в чем причина.
#270 #1057708
>>1057706
>>1057698
Всё понел. Ложная тревога.
#271 #1057944
Хочу вкатиться в machine learning, есть ли гайды от двачей, в нете дохуя видел, облако чекал, книги видел. И еще вот вопрос, счас все юзают питон как мейн язык для machine learning, а нужно ли какой-то язык учить еще дополнительно? Плюсы например и тд, в технический английский могу. Вообщем реквестирую годный гайд для вкатывания в МЛ, англ/русс.
студент-бульбаш 1 курс, планирую дрочить и поступать в ШАД
#272 #1057946
>>1057944
Когда то у мл-треда была шапка, но они ее проебали, иди лучше у них спроси
#273 #1057950
Небольшой инсайд для вкатывальщиков, сейчас до нас дойдет питонохайп с запада, в основном это джанго, но будут и энтерпрайз проекты, дрочите ассинхронность/делайте небольшие проекты в гитхабе и будет у вас счастье через полгода-год
#274 #1057953
>>1057950
Надо только потерпеть
#275 #1057954
>>1057953
Серьезно, посмотри на вакансии на швитом, там питон почти что основной язык программирования
#276 #1057957
>>1057946
Спс, пойду прочитаю их предыдущий и живой тред, мб кто-то до меня задал вопрос
#277 #1057965
>>1057954
Забавное самовнушение, НУ НИ ЗРЯ ЖЕ Я В ПИТОН ВКАТЫВАЛСЯ ОН ДОЛЖЕН ВЗЛИТЕТЬ!!!1 ВО В ОМЕРИКЕ ОН НА ПОЛПРОЦУЕНТА ПОДРОС ЗНАЧИТ И У НАС ВЗЛЕТИТ
#278 #1057968
Блять, не пойму, как нормально счиатть изображение из tempfile. Записывается норм mode='w+b'. А как считывать - хуй там плавал.
113 Кб, 510x967
#280 #1058374
>>1046298 (OP)
Анон, хочу освоить async, но не знаю с чего начать. С асинхронным программированием не знаком вообще. Подбрось годных гайдов для совсем нубов, желательно ещё и по asyncio, чтобы я мог это на хочу проктиковать.
42 Кб, 640x448
#282 #1058404
>>1046298 (OP)
потсоны поясните такую весчь, вкатился в питон до этого немного драконил c/c++ и вот каким вопросом задался.. Что вообще значит выучить/знать язык программирования? Вот к примеру питон, смотрел видеоуроки, прочитал книжонку [Python 3 и PyQt 5. Разработка приложений] + держу лутца как мини справочник такую нудную х*йню в 3-х томах с овер9000 страниц я не видел со времен Лафора с++ но ведь еще имеется куча доп библиотек и расширений которые тоже нужно знать. Где вообще брать всю эту инфу кроме источников указанных выше?
#283 #1058405
>>1058404
Банально, но гугл.
#284 #1058410
Аноны, нужно распарсить один файл .pcap. Юзаю для этого scapy.
Парсинг 10 мб файла занимает 9 секнуд (!!!).
Самое забавно, что даже при многопоточной работе - скорость парсинга не сильно меняется(при одном потоке даже быстрее).
Какие есть идеи/возможности по ускорению парсинга?
205 Кб, 1024x878
#285 #1058425
>>1057965

> жава-макака незаметна.



The Incredible Growth of Python
https://stackoverflow.blog/2017/09/06/incredible-growth-python/
#286 #1058444
>>1058410
Судя по описанию юзаешь threading, попробуй multiprocessing
#287 #1058445
>>1057968
Используй NamedTemporaryFile, с флагом delete=False
#288 #1058456
>>1058410
Взять яву, кресты, си
#289 #1058481
>>1057633
https://www.youtube.com/watch?v=CZ8bZPqtwU0
Вот тебе отличный гайдик с ютуба на эту тему.
#290 #1058507
>>1058445
Да, так и сделал уже, но спасибо)
#291 #1058508
>>1058444
Я вроде как юзаю мультипроцессинг.думми
Но это не точно, перепроверю
>>1058456
Парсинг на СИ будет быстрей?
#292 #1058509
>>1058508

>Парсинг на СИ будет быстрей?


Даже на дерфи будет быстрей.
#293 #1058515
>>1058509
Ок, покатился в Си тред.
#294 #1058600
Я один из немногих пифон-кодеров в миллионике, все вкатывальщики уезжают в Москву, в итоге на одно резюме по несколько вакансий, почему всех так в дс/дс-2 тянет, работа же есть
#295 #1058607
>>1058410
PyPy пробовал? я правда хз чё там сo scapy но у меня мой собственный питоновый код (числодробилка) на нём работал быстрей раз в 50, чем на том, что c python.org
sage #296 #1058613
>>1058607

>питон


>числодробилка


А месье знает толк в извращениях.
23 Кб, 416x226
#297 #1058620
>>1058607
Нет, не пробовал, сейчас с Си немного поиграю и если всё плохо будет - к этому перейду.
P.s. Но я всё таки не понимаю, как многопоточность так отсасывает у одного потока, потому как разница разительна.
#298 #1058628
>>1046298 (OP)
Стоп скроллинг.
Шкриптик, парсит файло, в зависимости от всякого кладет файло под папкам. Столкнулся с проблемой - в имени файлов на выходе должны быть шкобки "(" и ")". Шкобки в имя вставляются строкой типа
файлнэйм = "close_"+"("+time_now.strftime('%H.%M.%S')+")"+".mpg"
На выхлопе у файлов получается имя
close_\(14.50.56\).mpg
Как забороть?
#299 #1058637
>>1058620
Прочитай про особенность gil
На самом деле он просто очень быстро переключается между потоками
#300 #1058639
>>1058637

>Он не тормоз. он медленный газ.

#301 #1058644
>>1058613
да похуй мне, я проверял КОНЦЕПТ концепт взлетел
sage #302 #1058651
>>1058628

>файлнэйм = "close_"+"("+time_now.strftime('%H.%M.%S')+")"+".mpg"


файлнэйм = f"close_({time_now.strftime('%H.%M.%S')}).mpg"
#303 #1058658
>>1058644
Ну в таком случае, молодец.
#304 #1058662
>>1058651
Ну и все что в "" будет в имени файла. Например close_({time_now.strftime('%H.%M.%S')}.mpg на выхлопе.
#306 #1058676
>>1058664
Третий питон? У меня получается именно
close_({time_now.strftime('%H.%M.%S')}.mpg
Версию питона не сменить, пишу для блэкбокса.
#307 #1058677
>>1058676
filename = "close_({}).mpg".format(time_now.strftime('%H.%M.%S'))
#308 #1058680
>>1057633
Гугла string interning
#309 #1058691
>>1058677
done_name = "ch_{0}_{1}_{2}_close_({3}).mpg".format(words[0], run_time, time_now.strftime('%d.%m.%Y'), time_now.strftime('%H.%M.%S'))
ch_R24_15m_07.09.2017_close_\(17.42.12\).mpg
Что еще покурить? Можно ли скобки как-то отмазать от \?
Да, питон 2.6.6
#310 #1058721
>>1058508

>перепроверю


Multiprocessing.dummy - обёртка над threading, отсюда и GIL
53 Кб, 1038x501
#311 #1058779
Использую питон, чтобы перекодировать pickle в текст, но он выводит сплошной текст без форматирования и одной строкой. Есть ли какие-то средства, чтобы питон разбил по строкам? Пробовал autopep8, но он не работает на этом, оставляет текст не изменённым.
#312 #1058785
>>1058779
Типичный петонист будет всю жизнь искать готовое, чем напишет свое.
#313 #1058789
>>1058785
А нетипичный? Вызываю питон из сишного кода только из-за pickle. Можно на сишке написать, но вдруг есть готовое для того же питона?
#314 #1058822
>>1058779
From pprint import pprint
#315 #1058880
>>1058637

> быстро переключается между потоками


Вот про это знал, но надеялся на лучшее, ладно, видимо никак не ускорить.
70 Кб, 550x343
#316 #1058904
>>1058880
>>1058721
Эм, такого я не ожидал. Всё тот же файл на 10мб.
39 Кб, 634x254
#317 #1058905
>>1058904
Вернее даже так вот.
#318 #1058921
>>1058880
@
Юзать Pool из multiprocessing
@
PROFIT
#319 #1058930
>>1058822
Именно то, что мне нужно. Здоровья тебе, анон.
#320 #1058987
Есть какой-нибудь ресурс-сборник разных хитрожопых приемов программирования. Часто бывает такое, что решаю я какую-нибудь задачку на код варс или питонтьюторе и после успешного решения смотрю как решали задачу другие. И порой поражаюсь насколько бывают охуительные способы порешать какую-нибудь задачу, до которых я бы даже не додумался. Интересно есть ли какие-нибудь такие фишки?
Аноним #321 #1059045
>>1058987
Ты хотя бы HD открывал ?
#322 #1059055
>>1059045
Что такое HD?
#323 #1059105
https://ideone.com/OiBAJC

38 секунд. Можно ли это как-то оптимизировать? Чую там на секунду работы всего.
#324 #1059125
>>1059105

>Можно ли это как-то оптимизировать?


Разрешаю, опримизируй.
#325 #1059274
>>1059105
Определи место в котором основные тормоза и ковыряй его.
#326 #1059392
>>1059105
Это на яве секунда.
#327 #1059455
Сегодня столкнулся с проблемой из-за отступов, так что нужно определиться, как отсупать пробел*4 или таб?
#328 #1059459
>>1059455
Поставь себе иде вместо блокнота и пользуйся табами.
#329 #1059470
>>1059105
1. Scrapy не нужен для парсинга одной страницы. Его мощь проявляется при скрапинге целых сайтов с кучей страниц.
2. Слишком длинные селекторы. Почти уверен, они тормозят больше всего.

Попробовал распарсить твою страницу с lxml (scrapy тоже его юзает). Тут лежит код, вход, выход.
http://rgho.st/6ccrQhQwk

Там два варианта кода.
Один со словарями (~0.3 сек)
https://ideone.com/MZ8flY
Второй с классами и сверхгодным модулем attrs (~0.35 сек)
https://ideone.com/16nOrh
#330 #1059482
Дайте пожалуйста ссылку на какое-нибудь обсуждение, где доказано превосходство питона над джавой, нет я не зеленый, я залетный.
#331 #1059485
>>1059482
Питон хуже джавы по всем параметрам кроме задач прототипирования.
26 Кб, 522x399
#332 #1059507
>>1059470
Впал в эйфорию. Я уж думал никто не поможет. Можно несколько вопросов?
1. Сколько времени ушло на написание кода?
2. Часто ли тебя можно встретить в этом треде?
3. Сколько будут стоить твои услуги как коуча?
63 Кб, 675x336
#333 #1059525
>>1059507
1. Часа два, что довольно много, так как я довен и с lxml раньше не работал.
2. Несколько раз в неделю, в основном выходные.
3. Это не ко мне. Помогаю безвозмездно и только если мне интересна тема.
#334 #1059686
>>1055291
Соси хуесоска:
- selenium + mozilla + chrone + PhantomJS

JS/C++ -> Electron
#335 #1059724
https://www.youtube.com/watch?v=AhSvKGTh28Q
Такая-то баба-робот. И объясняет хорошо.
#336 #1059730
>>1059686
Жс-питушок, ты тредом ошибся.
#337 #1059740
>>1046298 (OP)
Сап, питонач, передо мной встала задача: сделать Telegram-бота с выводом расписания пар в университете. Доступа напрямую к их бд не имею, есть только расписания с самого сайта в виде pdf-таблиц. http://spmi.ru/sites/default/files/raspisanie/4к Г,ПМС.pdf
Каким образом можно оттуда спарсить всё это? Возможно ли такое вообще? Тут же pdf текстово-табличный, не просто изображения, должны же быть для такого либы какие-нибудь. В общем, прошу помощи, не вручную же переписывать всё это для всех курсов/факов/групп.
#338 #1059748
>>1059740
Скачивай ПДФ и пытайся парсить его.
Ебать у вас извращенцы, у нас расписание в таблице так ещё к гугл календарю привязали
#339 #1059810
Как так блять?
Запускаю через терминал скрипт который импортирует другой скрипт, в котором и идёт импорт 'psycopg2'
#340 #1059996
Аноны знает ли местный анон какие либо алгоритмы для перегона обычной фотографии в растровое изображение.

Предположим у меня есть изначально 256 цветовая палитра.
Пока что "трассировку" я думаю реализовать так, берем pillow обмазываемся дерьмом и танцуем в пьяном угаре, к изображению применяем немного размытия, дабы изначально усреднить цвета соседних пикселей(или это я хуйню придумал?) И попиксельно перебираю и подгоняю, к моей палитре. Профит?
Блин мб кто какие алгоритмы знает, или подскажет где я обосрался, еще же и контуры нужно строить как-то, брать отдельный цвет строить контру и что?
А что если я захочу что бы цветов на фото осталось 30, пусть даже 16 оттенков розового из них, главное что бы эти 16 были в первой палитре из 256цветов.

Самая важная деталь это подгон под мою цветовую палитру.
На пике результат автоматической трассировки изображения в адобе иллюстраторе,
#341 #1059999
>>1059996
так любая фотография - уже растр
#342 #1060000
>>1059996

>перегона обычной фотографии в растровое изображение


А у тебя обычная фотография в векторе что ли?
#343 #1060006
>>1060000
>>1059999
ошибочка вышла, все верно в векторное
#344 #1060014
>>1059996
Ты постеризацию хочешь сделать?
#345 #1060024
>>1059686

> кукареку


> баззворд -> баззворд


Что сказать-то хотел?
154 Кб, 1061x937
#346 #1060031
>>1060014
нет, вот что я хочу в итоге
28 Кб, 331x210
#347 #1060033
>>1060031
больной ублюдок
#348 #1060131
>>1060033
все настолько плохо?
#349 #1060269
>>1046298 (OP)
Есть скрипт, в него импортируется модуль, в котором есть функция.
Эта функция вызывается из скрипта через несколько раз с разными параметрами
Всё работает в PyCharm

import module

for i in ('a','b','c'):
module.funtion(i)

Скрипт выдаёт ошибку с номером строки, где module.function(i). Как узнать, с каким параметром ошибка ? Можно в функцию или цикл включить печать вроде ("выполняюсь с параметром=" + i), но, может быть, можно как-то более грамотно сделать ?
#350 #1060303
>>1060269
Используй принты для отладки, Гвида разрешил.
#351 #1060336
>>1058987
бамп вопросу
#352 #1060337
>>1046298 (OP)
Почему нубам советую Укус Питона? В нем же нет нихрена, одна теория.
#353 #1060348
Аноны, я уже приносил поделие в тред(вернее, анон сам нашёл его).
Но вот работа закончена на 98%(на мой взгляд) и хотелось бы что-то похожее на код ревью.
https://github.com/AndreiDrang/python-rucaptcha
#354 #1060426
>>1060348
Для начала я бы заменил табы пробелами, а то у вас код распидорасило.
#355 #1060458
>>1060426
Хм, странно гит на табы реагирует некоторые.
Ок, приму к сведению, спасибо.
#356 #1060574
Есть картинка, не ебу почему не могу приложить. На картинке белый фон и фигуры из черных пикселей: квадрат, треугольник, круг. На каждой картинке по одной фигуре.

Нужно определить что за фигура. Я чет нихуя не смог нагуглить, как это дерьмо решается. Сначала перегнал с помощью PIL в двумерный массив 1 и 0, где 1 это черный пиксель, а 0 белый. Но получилась хуета, типо идет много 0, затем пачкой небольшой 1, а затем снова много 0. Какие алгоритмы решениет такой фигни?
#357 #1060654
>>1060574
Решается буквально в пару строчек кода, если юзать cv
#358 #1060690
>>1059996
Вот это тот самый случай когда лучше взять готовое, чем колхозить самому. Тут очень много математики с имаджпроцессингом, поиском контуров и кластеризацией, всё это надо думать ещё до того как ты сядешь за клавиатуру.
Умная мысль написан тут: https://stackoverflow.com/questions/12894507/convert-raster-images-to-vector-graphics-using-opencv
Посмотри opencv и всякие autotrace/potrace.
#359 #1060694
Разбирался тут с числами Фибоначчи. В целом понял как найти. Но что если мне нужно сделать обратную операцию: Fib(N) = 55, как найти N?
#360 #1060775
Аноны, можете дать какой-нибудь адекватный пример, когда реально лучше использовать __new__ вместо __init__ ?
#361 #1060778
>>1060775
Гугли: метапрограммирование python
#362 #1060881
Анон, помоги разобраться с множественным наследованием
https://ideone.com/FQFkkM
Вот я описал класс Unit, от него наследуется два класса Archer и Magician, у первого может быть любая атака, у второго атака 5, то есть у обоих есть поле .damage и оно различается, второй ещё колдовать может.

Теперь я хочу запилить героя, который может и атаковать и колдовать.

Если тупо наследовать все 3 класса, вот так:
Hero(Unit, Archer, Magician)
то ошибка:
TypeError: Cannot create a consistent method resolution
order (MRO) for bases Archer, Magician, Unit

Если же только два:
Hero(Archer, Magician)
то другая ошибка:
TypeError: __init__() takes 4 positional arguments but 5 were given

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

Читал вот это: https://habrahabr.ru/post/62203/
Но там именно пример кода, какой-то непонятный.

Сори за тупой вопрос, если чо.
#363 #1060890
Где можно прочитать про тестирование на пифоне, устроился тестером, но не совсем уверен, что я все правильно делаю
#365 #1060911
>>1060890
А что тестировать собрался?
#366 #1060916
>>1060911
Модуль большого приложения на джанге (а точнее вьюху).
Он принимает post-реквест c листами, делает запрос в бд и возвращает ответ в json'е, нужно, что бы coverage возвращал 100%
#367 #1060918
>>1060916
Ну так в джанге даже свои юниттесты захуячили, на, хоть обчитайся https://docs.djangoproject.com/en/1.11/topics/testing/tools/
#368 #1060919
>>1060918
Я это читал, есть ли какой нибудь кукбук\лекции\видосы, что бы дзен постичь, пока только смотрел на тесты других модулей, которые писали разрабы-мидлы, но я не уверен, что делаю правильно
Или лучше у команды спросить просто?
#369 #1060920
>>1060919
Так что там тебе не понятно, все расписали с примерами. А если совсем не шаришь, подойди и попроси объяснить, хуйли ты как хикка.
#370 #1060921
>>1060920
Это моя первая работы, и мой второй день, я волнуюсь!!!
#371 #1060923
>>1060921
Ну обосраться теперь, хуйли ссать то, с джуна то какой спрос?
#372 #1060927
>>1060923
Я просто не знаю, что от меня ожидают. Завтра спрошу все
#373 #1060932
>>1060927
Ожидают что ты не будешь тупить и обучаться, а если будешь сидеть засунув язык в жопу ни чем не интересуясь и нихуя не делая, то есть большой шанс вновь отправиться на поиски работы.
#374 #1060995
Короче времени свободного дохуя, решил методом проб и ошибок пилить свою борду лол
Сразу вопрос про модели.
Сначала хотел пилить одну модель пост и всё, но как тогда из треда возвращать пару последних постов?
Если пилить отдельно модель треда и модель поста, то это ManyToManyField?
Второе выглядит как-то тупо, потому что всё равно получится, что все колонки берутся из поста и вроде как нахуй не нужен этот тред, но?
Что скажете, уважаемые?
#375 #1061001
>>1060995
https://github.com/search?utf8=✓&q=django+imageboard+language:Python&type=Repositories&ref=advsearch&l=Python&l=
Изучай, этих бордов как грязи на джанге напилили.
74 Кб, 873x652
#376 #1061003
подскажите пожалуйста, почему не получается
На винде такое прокатывало, это какая-то особенность поиска путей в линуксе? или я долбаеб? дада это и так понятно
#377 #1061009
>>1061003
Надо создать в приложении блог_пост файл urls.py и в него записывать вьюхи приложения, а потом этот urls.py нужно подключить в основной
#378 #1061010
>>1061003

>или я долбаеб?


This. from ..blog_posts import views Алсо, структура проекта уебанская, не делай так.
#379 #1061016
>>1061010
так же блять советуют уебки с юуба папка src была в ней прочая поебота, а дальше сам проект, расскажи плз как лучше или статейку подкинь.
да я так пробовал мне ошибку выдало
ValueError: attempted relative import beyond top-level package
#380 #1061020
>>1061016
https://www.youtube.com/watch?v=gqRLPx4ZeSw&list=PLEsfXFp6DpzQFqfCur9CJ4QnKQTVXUsRy&index=12
вот почему у него такая же структура и импортируется, а у меня нет
#381 #1061026
>>1061016
src - папка со всем проектом
personalwebsite - папка с настройками и подключением дополнительных urls.py
blog_posts - папка с логикой, моделями и своим urls.py, который указывает на вьюхи приложения
Не очень хорошее видео, прочитай django by example какой нибудь лучше
#382 #1061029
>>1061009
ну это уже костыли, а не решение проблемы ((
#383 #1061030
>>1061029
Ты траллишь? Это так и нужно делать
#384 #1061035
>>1061026
хм, я думал вся суть в том что вложенность пакета на одном уровне, и там и там одинаковая вложенность, только так как ты посоветовал импортируется, а изначально нет.
Нихуя не понимаю, где там мой лутц.
>>1061030
такс и зачем мне создавать лишний файл если у меня допустим только одна вьюха, и я ее мог бы импортировать просто в urls проекта, по моему так рекомендуется а не обязательно.
#385 #1061041
>>1061035

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


СТРУКТУРА ПРОЕКТА
Так всегда нужно делать, на одно приложение один urls.py, даже если там одна вьюха, да и от создания ЛИШНЕГО ФАЙЛА ничего не будет
#386 #1061044
>>1061041
хорошо извините :(
>>1061026
Я понял что поиск начинается на уровне проекта, теоретически руками можно было добавить путь в патч, или я опять хуйню придумал? Буду делать все как правильно... За книгу спс почитаю.
#387 #1061056
Есть питон файл, прописанный в bashrc. Рядом с ним лежит текстовый файл. Когда я запускаю скрипт из любого пути, он не видит этот файл, так как пытается найти его в текущей директории. Как сделать, чтго бы он искал его не в текущей, а в той, где сам скрипт лежит по факту, без использования абсолютного пути?
#388 #1061067
>>1061056
os.path.dirname(os.path.abspath(__file__))+your.txt
#389 #1061077
>>1061067

>os.path.dirname(os.path.abspath(__file__))+your.txt


То что нужно, спасибо
#390 #1061142
Помогите нюфагу. Я что то в этой жизни не понимаю.
Ну вот я осилил питон, ну могу запилить какое нибудь веб приложение на Джанго простенькое, могу сверстать сайтик не сложный, ну пару скриптиков несложных написать.
А что дальше?
Вроде ответ очевиден - иди устраивайся на работу, но в моей голове почему то образовалась такая установка, что я Говно и ничего у меня не получится, что я ошибся со стеком, что я завалю все собеседования и т.д.. это очень тревожит.
Может кто сталкивался, отпишите как преодолели себя, это очень важно.
#391 #1061143
>>1061142
я такой же как 1в1
делаю свой проект что бы голое резюме не посылать, а там еще могут давать тестовые задание что и пополнит резюме, нехуй сцать друг,
нужно пытаться, обосремся так с по максимому.
#392 #1061164
>>1061142
тебе просто надо найти компанию где все тоже ошиблись со стеком а потом поздно было
#393 #1061171
>>1061142
Хуль его преодолевать лол
Думай об этом как о интересном приключении, а не определяющем твою жизнь событии. Все собеседования твои, я тебе гарантирую.
#394 #1061199
Еду на собес, django-developer.
Меняажтрисет
#395 #1061218
>>1061199
Вангую мывамперезвоним.
#396 #1061238
>>1061218
Ага, в течении 2 дней.
Ищут кодера на йобо-проект, который "нужно как-то поддерживать, но нет никакой инфы по нему, это нам досталось от старой команды, там 30% костылей,30% неочевидного говна ну и все остальное норм. Развернуть у нас его может лишь один человек, но ему не хватает времени на что-то еще, поэтому мы в поисках. А, ну и там python 2 :)"
#397 #1061351
SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF
#397 #1061351
SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF SELF
#398 #1061354
>>1061351
THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS
#398 #1061354
>>1061351
THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS THIS
#399 #1061419
>>1061354
кстати this то использовать не обязательно
#400 #1061433
>>1061238
Зачем вообще на такие собесы ходить?
#401 #1061445
Знающие люди, подскажите пожалуйста, есть ли способ заставить бота в телеграмме загружать к себе отправленные ему фото?
#402 #1061449
>>1061445
Знакомится с тян бота уже научил, а скачать фотку не знаешь как
#403 #1061455
>>1061449
Научил отправлять, а научить принимать сложно
#404 #1061473
>>1061455
Видимо не только для меня это сложно
#406 #1061570
>>1061433
В вакансии про это ни слова не было, это выяснилось в ходе общения с хитрыми ухмылками.
2,2 Мб, 2592x1944
#407 #1061677
превед двадч
как питон пожевает?)))
карочи, гоу чтоли SSH для виндуса нопишым? М?
такое нормальное прям шоб было, через подпроцессы все стдин стдерр и стдоут, скрин экрана сделоем и scp
я и сам могу но чета скучно, вдруг кому на досуге захочется поговнокодить милости прошу на мой гейхаб аккаунт, там инструкция будет для вас
github.com/0xBFFFF0A4/2ch
#408 #1061793
Товарисчи, помогите с задачкой. Нужно скрипт написать, что б запрашивал путь к джсон файлу и выдавал его отприттипринтченым. Чет голову сломал уже..пока только учусь.
#409 #1061817
>>1061793
Ответ от сервиса положить в список. По элементам списка пробежаться foreach
#410 #1061827
>>1061533
Это пхп, а мне нужен питон
#411 #1061829
>>1061827
Переходи на пхп раз ты такой _____.
#412 #1061833
>>1061829
Так себе совет
#413 #1062048
>>1046298 (OP)
Анон, это моя первая самостоятельная работа. В теории это должен быть краулер, который собирает все ссылки с сайта, делит их на внутренние и внешние, и, в зависимости от конфигурации, дёргает заголовки либо только с внутренних ссылок, либо со всех. Такое ощущение, что я дохуя где проебался кроме выбора деятельности, можешь глянуть и указать основные косяки? Не лаба, для себя пишу.
https://pastebin.com/J9C29Pqx
38 Кб, 512x333
#414 #1062082
>>1062048
Пикрелейтед, или это у тебя так задумано? Не понял сути твоего гениального замысла.

>max = len(self.links)


>for n in range(0, max):


>____if self.links[n] not in self.doneLinks:


for link in self.links:
____if link not in self.doneLinks:
________....

>except req.exceptions.InvalidSchema:


>del(self)


>except req.exceptions.MissingSchema:


>del(self)


Можно в один объединить перечислив эксепшены через запятую. Да и зачем удаляешь, за память переживаешь что ли, лол.
#415 #1062102
Словил я, в общем, ошибку импорта, прочитал про circular import и вот не понимаю, как код распределять по файлам? Все в один пихать что ли?
#416 #1062104
>>1062102
Кидай пример своей херни.
Может стоит выделить файл конфига с импортами. пальцем в небо
#417 #1062107
>>1062082
Я что-то туплю, не могу понять суть проблемы. То, что она ссылку выводит? Это я для облегчения тестирования оставил.
Про итерацию по списку спасибо, затроил чего-то.
Исключения тоже первый раз перехватывал, поэтому так некузяво. А удаляю - за память переживаю, конечно, но изначальная идея была в том, что по мере того, как кончаются внутренние ссылки и остаются внешние/нерабочие, ссылки на объект удаляются и программа останавливается. Только, сдаётся мне, не работает эта идея.
#418 #1062110
>>1062082
А что, объекты не принято уничтожать в python? Как-то по другому это работает?
>>1062107-быдлокодер.
41 Кб, 619x731
#419 #1062111
В нашем уютном треде время от времени спрашивают как можно рисовать в питоне. В svg можно рисовать.
Вот код для примера.
#420 #1062112
Отвалилась ссылка
https://ideone.com/rmM9WE
#421 #1062113
>>1062110

>А что, объекты не принято уничтожать в python?


Обычно нет. ибо для этого gc существует, а если уж и решил этим заняться сам, то лучше для начала изучить вопрос, а надо ли оно тебе вообще. В случае с >>1062048 это бессмысленно.
#422 #1062115
>>1062113
Окей, спасибо большое, погуглю на досуге.
#423 #1062236
>>1062111
А как можно быстро и просто рисовать график (типа как ЭКГ/осциллограмма)?
matplotlib чёт тормозит пиздец
#424 #1062243
Можно ли начать теребить джанго из под шинды? Если да, то можно годные источники для изучения вышеназванного
#426 #1062330
>>1062320

> en


Ррря! Так или иначе, придется пытаться варить эту тему, спасибо.
#427 #1062334
>>1046298 (OP)
анон, я не понимаю: делаю всё как тут [CODE]https://groosha.gitbooks.io/telegram-bot-lessons/chapter4.html
[/CODE]
сервер включается без ошибок, но когда я пишу боту сообщения - ничего не происходит. почему так ? как это фиксить ?
#428 #1062341
>>1062330
Без английского тебе тяжко будет, на русском мало актуальной инфы.
#429 #1062343
>>1062341
Обидно. Интересно, как долго надо будет пыхтеть над самой незамысловатой соц. сетью.
#430 #1062348
>>1062334
Может логи какие есть?
Или может брейкпоинты расставишь и начнешь дебажить?
П.с. Или может возьмешь яйца в кулак, установишь nginx+flask+etc. и все?
#431 #1062360
Как правильно применять несколько мок патчей к тесту? При указании аргумента return_value работает только последнее указанное значение
#432 #1062444
ПИШЕШЬ ТЕСТЫ ДЛЯ МОДУЛЯ
@
ПРОВЕРЯЕШЬ НА ЛОКАЛЬНОЙ МАШИНЕ ЧЕРЕЗ COVERAGE
@
УРОВЕНЬ ПОКРЫТИЯ 98% ЗАЕБИСЬ
@
ЗАЛИВАЕШЬ ВСЕ ЭТО НА СЕРВЕР ТЕСТИРОВАНИЯ
@
УРОВЕНЬ ПОКРЫТИЯ 12%


МОЯ ЖОПА ГОРИТ НАХУЙ ЧТО ЗА ХУЙНЯ, ТАМ ТОТ ЖЕ COVERAGE ИСПОЛЬЗУЕТСЯ, НЕНАВИЖУ ВСЕ НАХУЙ, ОШМЕТКИ МОЕЙ СРАКИ МОЖНО СОБИРАТЬ ПО ВСЕМУ ОФИСУ
#433 #1062453
>>1062444
Тесты для слабаков, тру пасаны максимум принтами пользуются.
1,1 Мб, 680x680
#434 #1062456
>>1062453
МЕНЯ В ПОНЕДЕЛЬНИК В ЖОПУ ВЫЕБУТ, Я СПРИНТ ПРОЕБАЛ, СРАННЫЙ АДЖАЙЛ РЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕ

Или все не так плохо и такое поведение coverage в дженкинсе нормально?
#435 #1062458
Пацаны, такая тема, я тупой, я не знаю алгортимы и не могу их учить, голова пухнет. Я могу сделать какую-нибудь несложную автоматизацию, скрипт и сайтик, но что-то сложное не могу. Получаю свои 40к и не знаю как вырасти в нормального программиста, если не осиливаешь все эти алгоритмы и сложные проекты?
#436 #1062460
>>1062458
Идти в джуны конечно, там тебе все объяснят и ты наберёшься опыта
#437 #1062461
>>1062460
проблема в том, что я уже джун и я на работе один программист в отделе
#438 #1062463
>>1062461
Искать другую работу с командой, иначе будешь сидеть и тупить все время
Анончик #439 #1062465
Посоветуйте прорамму-клиент для Двача, плиз.
#440 #1062467
Пацаны, у вас такое бывало, что вам на работе дают задачу, а вы вообще не знаете как ее делать? И гугл не помогает, а коллег нету? Что делать? Тупо сказать начальнику, что это мне не по зубам?
#441 #1062469
>>1062467

>И гугл не помогает


Рили?
#442 #1062471
>>1062465
Chromium, Firefox, Edge, Opera
#443 #1062473
>>1062469
Рили, бывало такое.
Мимодругойхуй
#444 #1062474
>>1062471
дегенерат очень предсказуемый, сам то хоть понимаешь, что ты полное дно дальше некуда?
#445 #1062475
>>1062473
Это что же такое тебя делать заставляли?
#446 #1062476
>>1062465
бамп, ребя плиз видел прогу для Андроида, например.
#447 #1062478
>>1062474
Ути, какой злой то, напиши сам, хуйли тут мозги ебешь.
#448 #1062479
>>1062476
2-ch browser, dash-chan
И вообще это вопросы не для питон треда
#449 #1062485
>>1062475
Я тупой джун, меня заставили писать приложуху для андроида и айфона, чтобы короче отображала видосики, тексты разные и музыку, чтобы был бэкенд на питоне, куда бы весь контент заливался. Ну я вообще фиг знает как к этому всему подойти.
#450 #1062486
>>1062485
Написать апи и дергать его из приложения на смарте? Звучит не сложно
#451 #1062488
>>1062486
А как заливать контент на телефоны то? Как в этом поможет json api?
#452 #1062492
>>1062488
Напиши свой апи
#453 #1062494
>>1062492
свою апи, которая будет закачивать видео и музыку на телефоны? Как это вообщехз
#454 #1062502
>>1062475
Сейчас то и не упомню точно, но надо было что-то связанное с перехватом всего входящего трафика мутить.
Но в результате то выход нашел, но тем не менее, даже аноны не помогли.
Мимототхуй
#455 #1062504
>>1062494
Возьми готовый owncloud, nextcloud или питонячий seafile, ебани ребрендинг и готово.
#456 #1062510
>>1062502

>даже аноны не помогли


>даже


Чет проиграл.
#457 #1062512
Уже полгода учу питон. Написал пару программ для себя, написал имиджборду. А дальше-то что делать?
#458 #1062513
>>1062512
Подрочи например.
#459 #1062517
>>1046298 (OP)
Какие есть книги/ресурсы по тонкостям питона?
#460 #1062518
>>1062513
Вчера подрочил, сегодня не хочется.

>>1062517
Задавай вопросы, я все знаю.
#461 #1062519
>>1062518

>Задавай вопросы, я все знаю.


Ну вот я хочу узнать, какие книги покрывают "путь джуниора" в шапке. Что мне читать?
#462 #1062520
>>1062519
Какой уровень сейчас у тебя?
#463 #1062521
>>1062520
Могу писать хелловорлды.
Прочитал a byte of python.
#464 #1062522
>>1062521
То бишь нулевой уровень. Читай теорию алгоритмов и 'Python вкратце' Марчелли
#465 #1062524
>>1062522

>Читай теорию алгоритмов


Кормена?

>'Python вкратце' Марчелли


Можно, пожалуйста, ссылку на ozon или amazon, а то я найти не могу
#466 #1062526
>>1062510
Ну тут довольно разношёрстная публика, так что я надеялся.
А где мне еще помощи искать?
#467 #1062527
>>1062236
Plotly
#468 #1062574
>>1062524
Бамп
#469 #1062601
https://t.me/PornJeffBot

посоны, накалякал бота в телеграмм на петоне, зацените функционал пожалуйста. не реклама, честно, вчера сделал
311 Кб, 1080x1920
#470 #1062602
>>1062601
Оно и видно.
147 Кб, 702x566
#471 #1062603
>>1062601

>накалякал бота


Видео не подгружает, плохо накалякал, перекалякивай.
#472 #1062605
>>1062602
>>1062603
Вы идиоты?
Написано же, что видео не работает ещё.
>>1062601
Откуда фотки/гифки вытягиваешь?
#473 #1062606
>>1062603
>>1062602
Я похоже забыл написать, что работают только гифки\пикчи, для видео надо гораздо больше работы. В планах улучшение интерфейса и кнопочек + вероятно категории.
>>1062605
Все банально, что-то сохранил с порнотамблеров, а что-то просто отфорвардил с порнопабликов, бот все это обработал и сохранил в базе данных.
#474 #1062607
>>1062606
Норм, неплохо было бы по категориям разбить это всё.
Удачи.
#475 #1062608
>>1062606
Сделай парсилку на yotube-dl и дергай свежачок с сайтов.
#476 #1062615
В Python 3D модель можно загрузить? Что-то типа игры создать.
#478 #1062617
>>1062616
Это что, питон съел пэхапэ?
41 Кб, 594x266
#479 #1062621
Так забавно наблюдать за эфолюцией требований в одну компанию.
В самом начале они искали человека с минимальным опытом в питоне. Затем искали человека на з/п повыше но и с опытом. Теперь требования изменились ещё раз, з/п не указывают, но требования ещё немного подросли + добавилось "магическое" ООП и знание БД.
Все эти метамарфозы за 1 месяц.
#480 #1062622
>>1062621

>магическое" ООП


что в это понятие входит? сколько байт каждый тип переменной может хранить?
#481 #1062634
>>1062622
Не знаю, но видимо это очень важно, особенно для человека с 3+ годами опыта.
Можешь спросить у них лично:
hP%CrANUSsecurity-onli\:&nePUNCTUMbHq`y
#482 #1062657
>>1062524
Бамп вопросу
#483 #1062814
Алло, кто-нибудь может дать ссылку на эту книгу - 'Python вкратце' Марчелли. Нигде найти не могу.
#484 #1062815
>>1062814
Зачем тебе нужна именно эта книга?
#485 #1062829
>>1062815
Мне ее посоветовали выше.
Хочу посмотреть, что в ней.
#486 #1062834
>>1062527
мерсибо
#487 #1062851
>>1062829
Тоже что и во всех остальных.
#488 #1062857
>>1062851
Остальные я уже видел, но все же хочу именно ее.
#489 #1062860
>>1062857
У тебя какая-то нездоровая мания, попробуй с психологом поговорить об этом.
#490 #1062863
>>1062860
Хороший троллинг, маня
91 Кб, 1151x1238
#491 #1062890
Решаю задачки на питонтьюторе и я даун.
Почему на пикрелейтеде неверный результат?
#492 #1062929
Помогите с сокетом

Говорю сразу, твистеды, и прочие библы не встроенные в пайтон, я юзать не буду

Вообщем есть идея, сделать p2p чат
почитав про сокеты, решил запилить для начала сервак, который видет любой, кто вобьет мой айпи и определенный хост... Но выдает ошибку если вбиваю свой айпи. А если поставить 192,168,0,1/127,0,0,1/localhost нихуя не видно через интернет.

Сам код
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = 'localhost'
port = 8007
s.bind((host, port))
s.listen(1)
conn, addr = s.accept()
data = conn.recv(1000000)
print('client is at', addr , data)
conn.send(data)
conn.close()

p.s. Что мне нужно сделать, что бы я мог написать 212,212,212,212:228 и соединиться с сервером через инет?
#493 #1062931
>>1062929

>Что мне нужно сделать, что бы я мог написать 212,212,212,212:228 и соединиться с сервером через инет?


Прочитать про устройство сетей tcp/ip.
#494 #1062932
>>1062931
Книгу? Или хватит статьи в инете?
#495 #1062936
>>1062932
Олифера или Таненбаума, классика же.
#496 #1062937
>>1062890
/= (n - 1)
#497 #1062938
>>1062937
Это первая ошибка, вторая — среднеквадратичное отклонение тупо неправильно посчитано в цикле, посмотри формулу ещё раз. Тебе понадобится два раза пройти по последовательности
#498 #1062939
#499 #1062945
>>1062937
Нет, так совсем хуйня получается.
>>1062938
Суть задачи в том, чтобы пройти по последовательности один раз.
Вот тут пояснено про преобразование формулы и даже код есть: http://www.intuit.ru/studies/courses/12181/1174/lecture/25250
Я же написал то же самое, но получается неверный результат.
#500 #1062947
>>1062936
>>1062931
Я нихуя не понял. Как мне это решит задачу?
#501 #1062952
>>1062601
На гит выкладывал?
Хотел бы на исходники глянуть.
#502 #1062953
>>1062945

> Я же написал то же самое, но получается неверный результат.


Нет, у тебя деление за циклом. Цикл точно неправильный.
11 Кб, 404x54
#503 #1062957
>>1062945

>http://www.intuit.ru/studies/courses/12181/1174/lecture/25250


Обосрался с их арифметики.
Пиздец.
А ты вообще слышал что-нибудь про "критическое мышление"?

>>1062953

>у тебя деление за циклом


Про дистрибутивность слыхал? Поделить и сложить, сложить и поделить... разница только в потере точности в специфичных ситуациях.
#504 #1062959
>>1062957

> Про дистрибутивность слыхал?


Хм, кстати, ты прав. В любом случае, формула — хуйня собачья и за один проход с О(1) памяти сделать нельзя. Да и не нужно.
#505 #1062960
>>1062957
Да похуй на их арифметику, формулу они правильно преобразуют в конце концов.
Вот то же самое: https://foxford.ru/wiki/informatika/srednee-arifmeticheskoe-i-otklonenie-ot-srednego
#506 #1062984
>>1062959

> За один проход не получится


Скобки раскрой, пистонщик.
#507 #1062989
>>1062947
Это никак, ты прочитаешь, станешь чуточку умнее и сам решишь.
#508 #1062991
>>1062989
Но почему? И почему в питоне я не могу сделать свой сервер?
#509 #1063002
>>1062991

>Но почему?


ПАТАМУ

> И почему в питоне я не могу сделать свой сервер?


Могу только предположить, что мозгов на это не хватает.
#510 #1063004
>>1063002
Просто объясни, как его вывести в тырнеты?
#511 #1063005
>>1063004

>Просто объясни


Просто съеби, хуйло ленивое.
#512 #1063007
>>1063004
Залей исходники клиента/сервера на пастебин, ночью чекну, может помогу.
#513 #1063016
>>1063007
Ничего нету, это первое с чего я хотел начать.
#514 #1063019
>>1063007
Скажи что почитать? Я на докс.пайтон.орг не нашел объяснений
#515 #1063031
>>1063016
Хм, ну не знаю даже.
Я сейчас сам накида сервер/клиент и кину исходник.
68 Кб, 1096x889
#516 #1063055
>>1062890
Решил наконец, надо было сделать корректировку дисперсии.
Дауны вы все, пиздец.
Особенно этот: >>1062959

> за один проход с О(1) памяти сделать нельзя

#517 #1063057
>>1063031
server
https://pastebin.com/xQH5LNrT
client
https://pastebin.com/mE6gFbiw
Ну и порты открыл.
p.s. А вообще погугли команду для открытия конкретного порта, мне лень просто было.
p.p.s. Ещё работает, можешь проверить
host = '85.255.8.26'
port = 9090
#518 #1063083
>>1062236
Создатель matplotlib умер от рака. Либу пытаются поддерживать, но без идейного вдохновителя сам понимаешь, что получается.
#519 #1063112
>>1063057
Тоесть была проблема только с открытыми портами?
#520 #1063126
>>1063112
Думаю что так, потому как у меня тоже в начале не хотело отправлять нихуя на серв, хотя всё ок было. Потом как открыл порты - как по маслу.
p.s. Нужна компания для прожекта?
#521 #1063127
>>1063126
Та думаю нет... Спасибо огромное! Обчитался все сайты, но про порты так никто и не написал. Проект для себя пишу. Вот еще вопросик - Какой протокол лучше юзать, чтобы сообщения не перехватывались.
#522 #1063128
>>1063127

> Какой протокол лучше юзать, чтобы сообщения не перехватывались


Я конечно не гуру в сетевых делах, но думаю придётся самому реализовывать что-то, раз пишешь на коленке свой серв.
Гугли и бери за основу идеи: "Криптографический протокол"
> Та думаю нет...
Ну и ладно, от нехуй делать буду своё чатик пейсать.
#523 #1063130
>>1063128
Окей. Удачи тебе с твоим проджектом!
102 Кб, 388x445
#524 #1063207
Сап, котаны.
Нужен совет.
Стоит необходимость скопировать с одного ексель файла кусок таблица, например c A3 по B9, и вставить это все в другой эксель файл.
Как это можно сделать при помощи xlrd и xlwt?
Гуглил но ничего путного не нашел.
Помогите новичку.
#525 #1063210
>>1063207
Ну и дурак, гугли лучше.
#526 #1063216
>>1063210
Заебал помоги, везде только про копирование листов и на англицком(который я не понимаю).
Вы же моя надежда последняя.
#527 #1063217
>>1063210
Ну же скинь ссылку, пидор.
#528 #1063223
У меня есть десктопное приложение, которое умеет выполнять таски по cron-расписанию. Делает оно это с помощью qt-шного QTimer назначая для ближайших евентов интервалы. Проблема в том, что если система уходит в sleep, то отсчет у таймера прекращается и в итоге он исполняется позже ровно настолько, насколько система была в sleep. К тому же, мне бы хотелось сделать кнопку, такую что пользователь мог бы ее нажать и все таски, которые система проспала, могли бы исполниться. Я все написал, все просто, единственное что мне теперь нужно: обновлять таймеры, когда система выходит из sleep, но погуглив я не смог найти кросплатформенного способа поставить хендлер на выход из sleep. Кто-нибудь знает, как это сделать?
#529 #1063228
Можно, конечно, каждую секунду писать время в переменную и, если задетекчен разрыв, то корректировать, но это не выглядит хорошим решением.
#530 #1063231
>>1063223
А если вместо QTimer юзать schedule?
#531 #1063232
А что он может дать, чего не может дать QTimer? У него нет event loop'а и это отвратительно. К тому же, я не вижу там способа получить просроченные таски и исполнить их тогда, когда мне нужно, а не на следующий выхов run_pending.
#532 #1063250
>>1063232
Sched вроде подходит под твои запросы. https://pymotw.com/3/sched/
#533 #1063254
>>1063250
Хотя не, для треда придется каштомить, прикручивать очередь и метод run переопределить.
#534 #1063255
>>1063250
Он блокирующий. Если я использую qt, вроде должно быть ясно, что такое мне не подходит.
#535 #1063256
>>1063255
Завтра попробую ебануть, самому такая вещь нужна.
316 Кб, 850x850
#536 #1063257
Ладно, за неимением ничего лучшего буду раз в секунду чекать разрывы. Решение хоть и неприятное, нагрузки на проц, вроде, не дает и слава богу. Всем спасибо.
>>1063256
Что попробуешь? Мне нужно знать, что вот эти вот таски были отложены по причине ухода в слип, а не исполнять их тут же по выходу из слипа. Могу дать тебе код своего решения, если тебе интересно.
#537 #1063258
>>1063257

>Что попробуешь?


Сваять свой планировщик на базе sched + threading + PriorityQueue
#538 #1063262
>>1063258
Вот если запилишь кроссплатформенную поддержку причин того, что задача не выполнилась в срок -- будет круто, а иначе непонятно, зачем в 10-ый раз одно и то же писать.
#539 #1063268
>>1063262

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


В этом проблем не вижу, в PriorityQueue лежат эвенты упорядоченные по времени, sched достает верхний, смотрит его время, если меньше текущего то выполняет.
#540 #1063269
>>1063268
А если больше текушего на 37 секунд, это предыдущая таска тормознула или пользователь засаспендил ноут и включил? Я про это, ну да ладно, делай что нравится.
#541 #1063272
>>1063269
Выполнится так как будет первая в очереди, не вижу проблем, алсо, можно и реализовать политику для проебанных эвентов, хочешь выполняй, хочешь дропай. В sched это уже есть, только поправить чутка.
#542 #1063275
ghоверка
#543 #1063278
Двачик, помоги.

Джанго добавлет в запрос статики админки /admin/ (первый пик), как это убрать, не залезая в шаблоны? Настройки в втором пике. В instaled_apps, имя проекта в самом низу, ниже админки. Может так быть, что это nginx неправильно натроен или эти запросы это уровень Джанги?

Спасибо, Абу, что разбанил.
#544 #1063279
>>1063278
collectstatic делал, дело в запросе. Джанга добавляет /admin/ то есть ищет статику с этой странице, а не с корня сайта.
#545 #1063280
>>1063278
collectstatic
#546 #1063281
#547 #1063292
>>1063279
Ну проебался где-то с путями. Я в таком случае чекал все пути и пытался выяснить чому так.
#548 #1063360
>>1063292

>чекал все пути и пытался выяснить чому так


Где их чекать? urls.py пустой, /static/ настроен через nginx.
#549 #1063367
>>1063360
Всё, сделал. Нужно в static_root прописать со слешем впереди.
#550 #1063369
>>1063360

>static_url

#551 #1063419
Аноны, заранее извиняюсь за глупый вопрос.
Есть ли разница, как присоединить значение переменной к строке?

maria = "Maria"
1. f"Ave {maria}!"
2. "Ave " + maria + "!"
3. "Ave {0}!".format(maria)
Сильно не бейте
#552 #1063444
>>1063419
Есть, в скорости выполнения, в порядке от медленного к быстрому: 2, 3, 1. Еще есть форматирование через % оно идет между 3 и 1 способом. И конкатенацию строк лучше не использовать совсем.
#553 #1063458
Помогач, помоги исправить говнокод.

Идет проверка на тип параметра, где может быть либо другая переменная либо str.

Если там str, то выводится как: "I did (str)"
Если там переменная, то выводится как "I did <__main__.ClassName object at ....>. Можно как-то конвертировать это в str? Пробовал делать str(var) - как раз это и выводит. Есть какие-то еще решения?

Надеюсь, что этот сумбурный текст понятен.
#554 #1063459
>>1063444
Т.е "интерполяция строки" будет самой быстрой?
#555 #1063461
>>1063458
Проверка типа переменной - type(var)
Конвертация в строку - str(var).
#556 #1063470
>>1063459
Да, через f-string самый быстрый вариант, недавно статейку видел, чувак все варианты тестил с разбором через dis, f-string оказался самым быстрым.
#557 #1063473
>>1063470
Спасибо, няш :3
#558 #1063501
>>1063461
Это понятно, только вот print(str(variable)) выдает <__main__.ClassName object at и hex значение. Как сделать, чтобы имя var (variableName) выводилось как variableName через принт, а не как вот это говно?
#559 #1063505
>>1063501
То есть тебе нужна функция, которая вернула бы имя переменной?
#560 #1063508
>>1063505
Если да, то либо модифицуруй программу, привязав к каждому возможному имени строку через словарь, либо погляди в сторону globals()/locals(), в зависимости от области видимости переменной. Имхо, первый вариант лучше.
#561 #1063512
>>1063505
Да. Она идет как object.function(name)

Сама функция с if стейтментом выглядит так:
/кусок кода/
def name(self, shit):
self.anotherShit = self.anotherShit + str(shit)

Там нет конкретных значений по словарю, они задаются перед output'ом.
#562 #1063515
>>1063512
Ебашь locals() с поиском по значению переменной, всё, что могу посоветовать. Но я вообще-то говнокодер-хеллоуворлдщик, может щас кто покомпетентнее появится. .
#563 #1063537
Тред блядь перекатите, хуйли вы под шконкой где-то сидите. Просто мне лень перекатывать.
#565 #1063555
>>1063512
Кинь свой вопрос в новый тред, интересно, что ответят.
#566 #1064323
Сап аноны. Помогите с задачей.
Задача:
Выведите все элементы списка с четными индексами (то есть A[0], A[2], A[4], ...). Программа должна быть эффективной и не выполнять лишних действий!
Мой код:
#a = input().split()
#b = []
#for i in range(len(a)):
# a = int(a)
# if a % 2 == 0:
# b.append(i)
#print(b)
3 Кб, 267x111
#567 #1066367
Анончики, что я не так блять сделала?!
Пытаюсь запустить сервер через консоль - выдаёт неправильный синтаксис, где ошибка?
https://ideone.com/D9i4BL
3 Кб, 227x108
#568 #1066374
>>1066367

>быстрофикс


вот это выводит
#569 #1066376
>>1066374
все, сорян, нашла ошибку xD
Но высрала сюда быстрее чем подумала
Тред утонул или удален.
Это копия, сохраненная 4 октября 2017 года.

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

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