Рубрики
Фреймворк Django

Связи между моделями.

В нашем проекте есть одна модель под названием “Объявления”. В этой статье мы создадим новый класс модели “Rubric”, которая будет представлять рубрики объявлений. Допишем в модуль models.py пакета приложения “btest”: class Rubric(models.Model): name = models.CharField(max_length=20, db_index=True, verbose_name=’Название’) class Meta: verbose_name_plural = ‘Рубрики’ verbose_name = ‘Рубрика’ ordering = [‘name’] Новая модель содержит одно объявленное поле “name”, […]

 
Рубрики
Фреймворк Django

Параметры полей и моделей.

Для того, чтобы наша административная панель Django выглядела более понятна для обычного пользователя необходимо указать правильные названия полей. Наша созданная модель представляется непонятной аббревиатурой “Bbs”, а не простым и ясным текстом “Объявления”. Откроем модуль “models.py” пакета приложения “btest”. В написанный код необходимо ввести несколько поправок: from django.db import models class Bb(models.Model): title = models.CharField(max_length=50, verbose_name=’Товар’) […]

 
Рубрики
Фреймворк Django

Административный web-сайт Django.

Административный web-сайт предоставляет доступ ко всем моделям, объявленным во всех приложениях, что составляют проект. С помощью данной панели можно просматривать, добавлять, править и удалять записи, выполнять фильтрацию и сортировку. Эта подсистема реализована в стандартном приложении django.contrib.auth. За работу административного web-сайта отвечает стандартное приложение django.contrib.admin. данные приложения заносятся в список зарегистрированных в проекте изначально. Создание пользователя […]

 
Рубрики
Фреймворк Django

Создание и использование шаблонов в Django.

Шаблоны (template) отвечают за формирование внешнего вида приложения. Они предоставляют специальный синтаксис, который позволяет внедрять данные в код HTML. Подсистема Django, называется шаблонизатором, загружает шаблон, объединяет его с данными, извлеченными из моделей, полученными от посетителя или сгенерированными в процессе работы, и формирует на основе всего этого полноценный документ, который и отправляется клиенту. Директивы указывают поместить […]

 
Рубрики
Фреймворк Django

Модели и миграции в Django.

Модели Модель – это однозначное и исчерпывающее описание сущности, хранящейся в базе данных в виде класса Python. Класс модели описывает таблицу базы данных, в которой будет храниться набор сущностей, и содержит атрибуты класса (в других языках программирования их называют свойствами класса, или статическими свойствами), каждый из которых описывает одно из полей этой таблицы. Отдельный экземпляр […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: ttk.

ttk (themed tk) – это расширение tcl/tk с новым набором виджетов. В ttk используется новый движок для создания виджетов. Этот движок обладает поддержкой тем и стилей оформления. Благодаря этому виджеты ttk выглядят более естественно в различных операционных системах. В ttk включены следующие виджеты, которые можно использовать вместо соответствующих виджетов tk: Button, Checkbutton, Entry, Frame, Label, […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: Изображения.

Для работы с изображениями в Tkinter имеется два класса BitmapImage и PhotoImage. BitmapImage представляет собой простое двухцветное изображение, PhotoImage – полноцветное изображение. BitmapImage Конструктор класса принимает следующие аргументы: background и foreground – цвета фона и переднего плана для изображения. Поскольку изображение двухцветное, то эти параметры определяют соответственно чёрный и белый цвет; file и maskfile – […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: Упаковщики.

Упаковщик (менеджер геометрии, менеджер расположения) это специальный механизм, который размещает (упаковывает) виджеты на окне. В Tkinter есть три упаковщика: pack, place, grid. В одном виджете можно использовать только один тип упаковки, при смешивании разных типов упаковки программа, скорее всего, не будет работать. pack() Упаковщик pack() является самым интеллектуальным (и самым непредсказуемым). При использовании этого упаковщика […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: Методы виджетов.

Все виджеты в Tkinter обладают некоторыми общими методами. В этой статье мы познакомимся с такими методами. Список всех виджетов можно изучить в статье “Библиотека Tkinter: Виджеты“. 1. configure Виджеты могут быть сконфигурированы во время создания, но иногда необходимо изменить конфигурацию виджета во время исполнения программы. Для этого используется метод configure (или его синоним config). Также […]

 
Рубрики
Фреймворк Django

Фреймворк Django: Создаем первое приложение.

В этой статье мы продолжаем изучать фреймворк Django, а именно создадим свое первое приложение и выведем его в браузер используя отладочный веб-сервер. Пустой проект не содержит никакой функциональности и поэтому в Django существует такое понятие как «Приложения». Приложения Приложение в Django – это web-приложение, которое предоставляет определенный функционал – например, web-блог, хранилище каких-то записей или […]

 
Рубрики
Фреймворк Django

Создание Django-проекта в PyCharm.

В статье “Фреймворк Django” мы устанавливали и создавали Django-проект через командную строку в Windows. В этой статье мы рассмотрим другой вариант создания проекта на Django, а именно с помощью IDE PyCharm. Для того, чтобы можно было создать проект необходимо приобрести версию “PyCharm Professional Edition”, т.к. в версии “PyCharm Community” нету поддержки фреймворка Django. Приступим к […]

 
Рубрики
Фреймворк Django

Фреймворк Django.

С данной статьи мы начинаем большой курс по написанию собственного сайта на Django. Для начала познакомимся с данным фреймворком, установим и проверим работоспособность отладочного веб-сервера. Django — это программный каркас с богатыми возможностями, подходящий для разработки сложных сайтов и веб-приложений, написанный на языке программирования Python. Django — свободный фреймворк для веб-приложений на языке Python, использующий […]

 
Рубрики
Самоучитель по Python

Установка Docker

В этой статье мы рассмотрим несколько способов установки Docker на операционную систему Microsoft Windows 10 и Linux Debian 10. На сегодняшний день Docker является наиболее распространенным инструментом контейнеризации программного обеспечения. Установка на Windows 10 Скачайте программу DockerToolbox (программа для установки Docker на Windows) с github. На момент написания статьи версия DockerToolbox 19.03.1. Перед установкой Docker […]

 
Рубрики
Самоучитель по Python

Что такое Docker?

Контейнеризация является отличной альтернативой аппаратной виртуализации. Все процессы в ней протекают на уровне операционной системы, что позволяет существенно экономить ресурсы и увеличивать эффективность работы с приложениями. Одним из наиболее популярных инструментов для программной виртуализации является Docker — автоматизированное средство управления виртуальными контейнерами. Docker (Докер) — программное обеспечение с открытым исходным кодом, применяемое для разработки, тестирования, […]

 
Рубрики
Самоучитель по Python

Средства шифрования в Python.

В Python не так уж много инструментов стандартной библиотеки, которые работают с шифрованием. В данной статье мы рассмотрим несколько библиотек для шифрования и научимся шифровать и расшифровывать строки. 1. Хеширование Если вам нужно шифровать пароли, то для этого подойдет модуль стандартной библиотеки Python hashlib. Он включает в себя безопасные алгоритмы хеширования FIPS, такие как SHA1, […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: Разработка игры “Змейка”

В этой статье мы напишем игру змейка на Python. Это одна из самых распространенных аркад в мире. В основе ее реализации будет три класса: Класс сегмента (одного блока змейки). Класс змеи (по сути собрание сегментов). Класс подсчета очков. В процессе написания змейки у нас будут следующие этапы: Создание окна приложения; Объявление вспомогательных переменных; Создание игрового […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: Разработка программы Paint

В этой статье мы разработаем простую “рисовалку” на Python. Программа будет примитивная, но мы потренируемся в создании макетов компоновки в tkinter, передаче аргументов в функцию-обработчик, а также применим анонимные функции. Класс Paint В нашей программе мы будем применять ООП и поэтому создаем класс и называем его “Paint”. Листинг: from tkinter import * from tkinter.messagebox import […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: Графические примитивы

В этой статье мы познакомимся с графикой в библиотеке Tkinter. Начнем с графических примитив и в других статьях будем создавать сложные графические программы. При работе с двухмерной графикой базовым понятием является холст. Canvas (холст) – это достаточно сложный объект библиотеки tkinter. Он помогает располагать геометрические фигуры, узоры вставленные изображения и другие виджеты (например, метки, кнопки, […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: Диалоговые окна.

Библиотека Tkinter содержит несколько модулей, предоставляющих доступ к уже готовым диалоговым окнам. Это окна различных сообщений, выбора по принципу “да-нет”, открытия и сохранения файлов. В этой статье мы рассмотрим примеры окон из модулей messagebox и filedialog пакета tkinter. Для вызова диалоговых окон открытия и сохранения файлов и работу с ними необходимо импортировать “подмодуль” Tkinter – […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: Обработка переключателей.

Библиотека Tkinter содержит специальные классы, объекты которых выполняют роль переменных для хранения значений о состоянии различных виджетов. Как и говорилось в статье “Библиотека Tkinter: Виджеты“, от класса Radiobutton создаются радио-кнопки, от класса Checkbutton – флажки. Обработка зависимых переключателей Изменение значения такой переменной ведет к изменению и свойства виджета, и наоборот: изменение свойства виджета изменяет значение […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: События

Метод bind() привязывает событие к какому-либо действию (нажатие кнопки мыши, нажатие клавиши на клавиатуре и т.д.). bind принимает три аргумента: название события; функцию, которая будет вызвана при наступлении события; третий аргумент (необязательный) – строка “+” – означает, что эта привязка добавляется к уже существующим. Если третий аргумент опущен или равен пустой строке – привязка замещает […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter: Виджеты

В библиотеки Tkinter каждый виджет имеет определенные свойства, значения которых можно задавать при их создании, а также программировать их изменение при действии пользователя и в результате выполнения программы. Виджеты – это базовые блоки для создания графического интерфейса программы. За годы развития программирования некоторые из виджетов стали стандартными во всех языках и на всех платформах. В […]

 
Рубрики
Самоучитель по Python

Копирование проекта в “.exe” на Python

Написав программу на языке программирования Python мы начинаем думать: “А как собрать нашу программу в файл и запускать на любом компьютере без установки интерпретатора Python?”. В этой статье мы разберемся в этом вопросе. Существует большое количество библиотек, позволяющих это сделать, среди которых самые популярные: cx_Freeze, py2exe, nuitka, PyInstaller и др. В данной статье мы подробно […]

 
Рубрики
Библиотека Tkinter

Библиотека Tkinter в Python.

Tkinter – это пакет для Python, предназначенный для работы с библиотекой Tk. Библиотека Tk содержит компоненты графического интерфейса пользователя (graphical user interface – GUI), написанные на языке программирования Tcl. Под графическим интерфейсом пользователя (GUI) подразумеваются все те окна, кнопки, текстовые поля для ввода, скроллеры, списки, радиокнопки, флажки и др., которые вы видите на экране, открывая […]

 
Рубрики
Самоучитель по Python

Установка Python.

Сегодня поговорим о том, как установить Python на свой компьютер. Скачивать его будем с официального сайта www.python.org. Программа полностью бесплатная и вес у неё небольшой. Python будем устанавливать на операционную систему Windows. Для скачивания версии 3.8.1 (актуальная версия на февраль 2020) необходимо зайти на сайт и в меню находим вкладку “Downloads”. Наводим на нее и […]

 
Рубрики
Самоучитель по Python

Работа с популярными форматами в Python

Python поддерживает работу с различными популярными форматами данных – CSV, JSON. Работа с CSV-данными CSV – популярный формат т.к. многие средства импорта/экспорта работают с ним. Данный формат обязан своей популярности MS Excel, которая позволяет сохранять в CSV свои таблицы. Для доступа к CSV-файлам нужно импортировать модуль csv. Напишем программу, выводящую первые N-строк из CSV файла: […]

 
Рубрики
Самоучитель по Python

Обработка исключений в Python

Обработка исключений является мощным механизмом по управлению программой в особых ситуациях. Он позволяет избежать ее аварийного завершения вследствие внезапных и непредвиденных ошибок. Разработка программы на любом языке довольно часто бывает связана с возникновением различного рода ошибок, препятствующих получению желаемого результата. Как правило, не все они приводят к моментальному завершению программы: некоторые ошибки можно ликвидировать еще […]

 
Рубрики
Самоучитель по Python

Игра “Крестики-нолики” для двух игроков на Python.

В данной статье мы разработаем небольшую консольную программу “Крестики-нолики” для закрепления темы “Функции в Python“. Сначала рекомендуем изучить теорию создания функций и потом возвращаться к этой статье. Используемые функции в программе draw_board() – рисует игровое поле в привычном для человека формате. take_input() – принимает ввод пользователя. Проверяет корректность ввода. check_win – функция проверки игрового поля, […]

 
Рубрики
Самоучитель по Python

Функции и операторы для работы со строками.

Данная статья является продолжением статьи: “Работа со строками в Python“. Рекомендуем сначала изучить прошлую статью и потом возвращаться. Для работы со строками в Python есть несколько полезных функций и операторов, которые позволяют узнать длину последовательности, узнать, есть ли в ней определённый элемент. Функция len() Функция len() возвращает длину строки. Пример работы функции: ltext = 0 […]

 
Рубрики
Самоучитель по Python

Регулярные выражения в Python.

Регулярные выражения, также называемые regex, язык для поиска, извлечения и работы с определенными текстовыми шаблонами большего текста. Он широко используется в проектах, которые включают проверку текста, NLP (Обработка естественного языка) и интеллектуальную обработку текста. Регулярные выражения используются практически во всех языках программирования. В python они реализованы в стандартном модуле “re”. Он широко используется в естественной […]

 
Рубрики
Самоучитель по Python

Генератор случайных чисел на Python.

В этой статье мы напишем программу “Угадай число”, которая будет работать на основе генератора чисел. Если вы новичок в Python, тогда советуем сначала изучить статью “Циклы в Python” и потом возвращаться к этой статье. Модуль random предоставляет функции для генерации случайных чисел, букв, случайного выбора элементов последовательности. Рассмотрим функции модуля: random.seed([X], version=2) – инициализация генератора […]

 
Рубрики
Самоучитель по Python

Операторы в Python.

Операторами пользуются для выполнения операций с переменными и значениями. Рассмотрим небольшой пример: 10 + 5 = 15 В данном примере 10 и 5 называются операндами, а оператором является знак “+”. Python поддерживает следующие типы операторов: Арифметические операторы; Операторы присваивания; Операторы сравнения; Логические операторы; Операторы тождественности; Операторы принадлежности; Побитовые операторы. Арифметические операторы Арифметические операторы используются с […]

 
Рубрики
Самоучитель по Python

IDE PyCharm.

В этой статье мы поговорим о знаменитой IDE PyCharm для языка программирования Python. Это замечательная среда разработки от компании JetBrains, которая специализируется на создании продуктов для программистов, в том числе IDE. PyCharm — интегрированная среда разработки для языка программирования Python. Предоставляет средства для анализа кода, графический отладчик, инструмент для запуска юнит-тестов и поддерживает веб-разработку на […]

 
Рубрики
Самоучитель по Python

Переменные в Python.

Переменная – это поименованная область памяти, содержащая какое-то значение. Значения могут быть разных типов, например, строка, целое число, дробное число (float) и т.д. От типа переменной зависит, как именно она будет храниться в памяти. Если вы программировали на других языках, то знаете, что переменную сначала нужно объявить, а затем инициализировать. Отличие Python от таких языков […]

 
Рубрики
Самоучитель по Python

Программы с числами в Python

В статье “Числа в Python” вы могли изучить теорию работы с числами в языке программирования Python. В этой статье вы сможете научиться создавать небольшие мини-программы применяя числа Python. Для того, чтобы вы могли проработать все примеры на своем компьютере не забудьте установить Python. Вычисление времени в пути Программа вычисляет время автомобиля в пути. Пользователь должен […]

 
Рубрики
Самоучитель по Python

За что все любят Python?

Когда речь заходит о backend-разработке, web-разработка на PHP и Python — это два наиболее популярных решения, которые выбирают компании и разработчики. Тем не менее, какой из двух выбрать — остается под вопросом. Несмотря на то, что огромное количество web-сайтов написаны на PHP, в последнее время наблюдается резкая тенденция к росту разработки на Python. В этой […]

 
Рубрики
Самоучитель по Python

Объектно-ориентированное программирование в Python

Сегодня я расскажу вам о объектно-ориентированных возможностях в Python. Ведь с самого начала Python проектировался как объектно-ориентированный язык программирования. Объектно-ориентированное программирование (ООП) — парадигма программирования, в которой основными концепциями являются понятия объектов и классов. Класс — тип, описывающий устройство объектов. Объект — это экземпляр класса. Класс можно сравнить с чертежом, по которому создаются объекты. Python […]

 
Рубрики
Самоучитель по Python

Создание и подключение модулей в Python.

Модулем в Python называется любой файл с программой. В этой статье мы поговорим о том, как создать модуль, и как подключить модуль, из стандартной библиотеки или написанный вами. Каждая программа может импортировать модуль и получить доступ к его классам, функциям и объектам. Подключение модуля из стандартной библиотеки Подключить модуль можно с помощью инструкции import. К […]

 
Рубрики
Самоучитель по Python

With … as – менеджеры контекста.

Конструкция with … as в Python используется для оборачивания выполнения блока инструкций менеджером контекста. Менеджеры контекста позволяют выделять и освобождать ресурсы строго по необходимости. Синтаксис конструкции with … as: “with” expression [“as” target] (“,” expression [“as” target])* “:” suite В коде выше происходит выполнение: Выполняется выражение в конструкции with … as. Загружается специальный метод __exit__ […]

 
Рубрики
Самоучитель по Python

Встроенные функции в Python

У интерпретатора Python есть ряд встроенных в него функций и типов, которые доступны всегда. В этой статье вы можете познакомиться со списком встроенных функций Python. Встроенные функции, выполняющие преобразование типов bool(x) – преобразование к типу bool, использующая стандартную процедуру проверки истинности. Если х является ложным или опущен, возвращает значение False, в противном случае она возвращает […]