Comments 41
Код не программиста, но для «Инженера» просто здорово.
Да, а в первом абзаце заключения, я бы просто поставил точку вот после этих слов:
Питон отлично подходит людям
- Поручик, вы и на питоне программировать можете?
- Могу-с, только ноутбук постоянно соскальзывает.
Это же великолепно!!!
Раньше я для автоматизации рудиментарного бота (зрение+кноподав) пользовался несложным AutoIt — тоже могу порекомендовать.
Ботик для РО
другой вопрос, как выполнять такие задачи параллельно? допустим, при работе Pyautogui нельзя пользоваться компьютером. ну не запускать же под каждую копию игры виртуалку.
к примеру, где-то для buffer используют ctypes.create_string_buffer(bytes), а где-то ctypes.c_ulonglong()
Можно через Meltdown.
P.S.: тоже делал, только для спама подходило плохо, а вот циклить макрос /nexttarget /attack /delay 15 /pickup /pickup /pickup получалось замечательно. Ставишь в центр маленькой комнаты в катах и машинка фармит камни за тебя)
В 3-ей версии Python "Все эти долбанные декодеры с энкодерами" всегда работают как надо. А километровые логи на много короче чем в Java и слева указывают имя модуля, имя функции, а справа номер строки для более полного понимания в каком месте произошла ошибка. Или Вы ожидаете от ЯП подобного:
Error in line 13 you meant print() instead pirnt()
Если вы «труъ» программист и готовы брызжа слюной доказывать, что питон фигня и новичков сразу нужно макать в ручное управление памятью, яки младенца в святую воду — можете смело закрывать статью.
Как бы между Python и ручным управлением памятью есть и промежуточное звено: языки с автоматической сборкой мусора.
Питон отлично подходит людям с базовыми знаниями в области программирования и гуглинга для решения интересных задач.
А C#, Kotlin да и другие языки не подходят?
Реально юзер френдли язык. Лично по моим ощущениям синтаксиса меньше раза в три и нет идиотского количества ошибок, как в других языках, даже при написании небольших программ.
Очень спорное утверждение. Как раз таки в Python ошибок может быть только больше из-за его динамической природы.
Отличная экосистема. Если вы знаете, как сформулировать вопрос гуглу, вы с большой долей вероятности найдете или готовое решение или инструмент, позволяющей сделать, то, что вы хотите.
Опять-таки. А к другим языкам это не относится?
Нет танцев с бесконечными перекомпиляциями. На современных ПК небольшие программки конечно компилятся быстро, но все равно это раздражает если вы учитесь и приходиться пересобирать проект десятки раз.
Помимо Python вы знаете только C++?
Документация. По простоте, понятности и лаконичности ближайший аналог видел только у PHP.
Да куча документации хорошей и разной по популярным языкам.
В питоне прослеживаются черты линукс философии. Даже установка новых модулей легка и приятна и не вызовет у вас трудностей если вы освоили какой нибудь apt или yum
nuget для C#, maven для Java.
Питон удобен для создания всяких хаков и автоматизаций в играх, особенно тех, где требуется частая модификация.
Какая модификация?
Если вы «труъ» программист и готовы брызжа слюной доказывать, что питон фигня и новичков сразу нужно макать в ручное управление памятью, яки младенца в святую воду — можете смело закрывать статью.
Как бы между Python и ручным управлением памятью есть и промежуточное звено: языки с автоматической сборкой мусора.
Сие было небольшим троллингом программистов, которые отрицают, что не все языки подходят для освоения юными падаванами и кричат что именно их язык нужно учить потому что он самый[хардкорный, массовый, энтерпрайзный, кошерный, ...] да еще и литературы вдобавок насоветуют а ля «паттерны проектирования» или опусов Кернигана и Ричи. Это ведет к скорейшему забиванию на идею что нибудь попрограммировать.
А C#, Kotlin да и другие языки не подходят?
На шарпе переделывал инъектор для игры Rust, опять же при помощи гугла и советов коллеги — то еще удовольствие если с языком не работаешь каждый день. Так же, если на питоне понравилась программка или модуль — то ты открываешь, изучаешь и копируешь нужный код. В c# для подобного пришлось качать net reflector и прогонять прогу через деобфускатор de4dot. Я думаю не стоит тут упоминать как выглядит код после деобфускации, кто ковырял сам знает.
Очень спорное утверждение. Как раз таки в Python ошибок может быть только больше из-за его динамической природы.
Возможно для больших и сложных проектов это так, но у меня есть только опыт написания небольших программок под собственные нужны и он говорит об обратном.
Опять-таки. А к другим языкам это не относится?
На мой, достаточно субъективный, взгляд накладывается опыт разбирательств с другими языками. Питон сообщество нацелено не только на профессионалов, вот в чем его плюс. Возможно, если вы опытный программист, вы не заметите разницу в общении на форумах или в подаче документации, но для начинающих важно чтобы объяснялось для их уровня. И да, никто не будет делать на c# или java программки для системного администрирования,
а на питоне будут. Это и создает ту экосистему для людей-не-программистов.
Помимо Python вы знаете только C++
А кто сказал что я знаю python и с++? Я знаю базовые для всех языков конструкции и как пользоваться гуглом. Дополнительный синтаксис осваивается за пару часов ( если это конечно не lisp или брэйнфак ). Это как раз та фишка о которой я и говорил в статье — питон не нужно хорошо знать чтобы решать на нем задачи.
Да куча документации хорошей и разной по популярным языкам.
Опять же с точки зрения профессионального программиста да, а с точки зрения не программиста вопрос очень спорный. Отписал выше.
nuget для C#, maven для Java
Не спорю. Тут это просто плюс, по сравнению с языками, в которой таких систем нет.
Какая модификация?
В играх отвратительно часто встречаются апдейты меняющие статические адреса и указатели, хранящие скорость, коэффициент разброса оружия или еще какую нибудь интересную переменную. Или например ввели в игре временное изменение и кликер тыкает уже не туда, куда ему положено.
мой быдлокод будет резать вам глаз
То, что Вы это признали — хороший признак того, что Вы от него хотите избавиться и писать труЪ-код. Одно дело — хвастаться и буквально кичиться быдлокодерством, и совсем другое — признать и активно с ним бороться. Сейчас сам на этом или чуть более раннем этапе.
расхвалить питон и показать еще не освоившим, что с ним может делать человек-не-программист
Именно это как раз важно. Это как выучиться на сварщика, но работать/подрабатывать в оркестре барабанщиком (и делать это хорошо).
Статья хорошая, осталось чуть-чуть подтянуть правописание (судя по комментариям, Вы умеете писать грамотно, что не очень часто встречается — просто не торопитесь с публикацией)).
Всё, перестаю ворчать.
Мы не можем ставить исполнение программы на паузу применив классический sleep() т.к. все собьется да и вообще кругляши летят достаточно быстро.Что-то туплю… Почему собьется? По поводу скорости: а sleep(0.01) не пробовали?
locateOnScreen('вырезанная_картинка.png')
Python, под пиратским флагом