Программирование Python

Статья Пишем графическую оболочку на Python - часть 3

  • 8 627
  • 14
Часть 1 Часть 2

Всем привет!

В предыдущих частях мы познакомились с двумя методами позиционирования элементов - pack() и place(). Для выполнения простых задач они вполне подходят. А если у нас планируется программа, где будет сложный интерфейс, или просто большое количество элементов, то самым лучшим методом будет несомненно grid(). На первый взгляд метод немного посложнее, но разобравшись в сути, он не станет выглядеть сложным.

Метод grid() как ясно из названия, представляет собой сетку. Выглядит схематично это следующим образом:

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

Статья Пишем графическую оболочку на Python - часть 2

  • 8 239
  • 5
В первой части мы узнали как создавать основное графическое окно, и размещать в нём кнопки и текстовые метки с помощью метода pack. Но как можно заметить этот способ ориентации в окне по сторонам света очень негибкий. И сегодня мы рассмотрим другой метод, лишённый этого недостатка.

Напишем такой код:

Python:
from tkinter import *

root = Tk()
root.title("Метод place")
root.geometry("400x250")
root.resizable(width=False, height=False)

puch = Button(text="Puch", background="#483D8B", foreground="#fff", width=12).place(x=50, y=200)
sova = Button(text="Sova", background="#483D8B", foreground="#fff", width=12).place(x=250, y=200)

text = Text(width=47, height=10, bg="#F8F8FF", fg='black', wrap=WORD)
text.place(x=10, y=10)

root.mainloop()

Здесь мы использовали метод place() Как он работает? Берутся координаты по осям x и y. Для понимания - икс...

Конкурс Python - Dump VK (фото, документы, диалоги+вложения)

  • 29 468
  • 15
Dump VK
Статья для участия в конкурсе Конкурс 2018 года - авторская статья по любой тематике нашего форума!

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

"Из коробки" доступен дамп:
  • Фото (из всех альбомов в том числе личных)
  • Документы
  • Диалоги
    • сообщения {'from', 'text', 'date'}
    • вложения (photo, docs, [COLOR=rgb(251, 160...

Конкурс Изучаем Python на практике. Пишем аналог утилит wc и split (для подсчета строк и разрезания текстовых файлов).

  • 6 242
  • 2
Статья для участия в Конкурсе программистов.
Это вторая статья из цикла "Изучаем Python на практике".
Первый пост: Изучаем Python на практике. Пишем чекер SSH серверов.
Смотрите комментарии к посту, если будут найдены ошибки или внесены исправления, буду публиковать их в комментариях, так как через некоторое время возможность редактирования поста пропадает.

В *nix подобных системах есть две утилиты: wc - для подсчета строк в файле, split для разрезания файлов. Однако split режет файлы по количеству байт, не учитывая содержимое.
Попробуем создать их аналог для работы с текстовыми файлами.
Сформулируем...

Статья Пишем графическую оболочку на Python - часть 1

  • 38 100
  • 16
Приветствую любителей языка Python!

Все вы прекрасно знаете, что программы пишутся как в консольном варианте, так и с графической оболочкой GUI.
GUI - graphical user interface

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

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

Есть много вариантов Python GUI. Вот неполный список:

Tkinter
PyGTK
PySide

[COLOR=rgb(251, 160...

Статья Изучаем Python на практике. Пишем чекер SSH серверов.

  • 19 080
  • 24
Приветствую всех, кто изучает Python и хочет перейти от сухой теории к практическому применению полученных знаний.
Просмотрев форум codeby.net нашел несколько материалов, где авторы делились своим опытом и пробовали свои силы в написании небольших скриптов. К сожалению большинство авторов использовали процедурный тип написания кода. В то время как создание, поддержание и развитие приложения даже средней сложности требует ООП подхода.
Попробуем в небольшом проекте применить ООП, в самом простом виде.
Автор будет очень благодарен более опытным товарищам, если они наставят на путь истинный и, возможно, дадут пару подзатыльников для дальнейшего развития в нужном направлении.
Не смотря на свой возраст - автор начинающий программист-любитель, самоучка, а без посторонней помощи в программировании можно барахтаться годами примерно на одном уровне. Именно поэтому и пишу.

Для тех, кто сразу хочет развернуть проект, скачиваем...

Статья [Python] Пишем динамический C2 сервер

  • 6 597
  • 10
Приветствую всех! Недавно меня опять посетила идея. А что если сделать динамический C2 сервер, возможно ли это?
Теперь давайте пройдемся по теории, C2 сервер - проще говоря это сервер для контроля малваря, например малварь стучит на этот сервер, получает задание и выполняет его на зараженной системе.
Но проблема таких серверов, что ip такого сервера жестко установлен в коде, и тем самым этот сервер легче отключить.
Динамический C2(возможно такого понятия нету, но мне кажется, что слово "динамический" легче для восприятия идеи) - это то есть ip не будет жестко указан в коде, он будет меняться n-ое время(желательно 12 часов)

Я написал скажем основу, но идея еще не до конца завершена, осталось придумать как или через что будет поступать для агента(того кто выполняет задания) новый ip.(есть идеи например: через dns или протоколы какие-нибудь)
В будущем хотел бы скрестить этот C2 c koadic. Также если вам понравилась эта идея и вы хотите участвовать в разработке напишите мне в ЛС на...

Статья Учимся писать чистый код на Python

  • 6 081
  • 8
Какое-то время покодив, я понял, что большинство программ, встречающихся в сети написаны очень грязно. Да и сам я не так сильно заморачивался с этим делом.
Давайте разберёмся, что значит грязно?

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

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

Анализатор кода показал огромное количество предупреждений.

pey.png


А теперь разберёмся, где можно посмотреть эти...

Статья Считаем количество знаков в тексте

  • 5 291
  • 5
Приветствую всех читателей!

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

Для начала импортируем модуль pyperclip и вставим поясняющий текст.

Python:
import pyperclip

print('Скопируйте в буфер обмена текст')
print('-'*50)

input('Нажмите ENTER')
print('-'*50)

Потом вставим скопированный текст

Python:
s = pyperclip.paste()

Подсчитаем количество символов с пробелами, без пробелов, и количество слов.

Python:
n = len(s.split())
s = s.replace('\n', '')
s = s.replace('\r', '')
n1 = len(s)
s = s.replace(' ', '')
n2 = len(s)

Теперь сначала выведем скопированный...

Codeby Games CTF

Наши курсы

Команда онлайн

Наши книги