Информация о книге

978-5-9775-0797-4

Главная  » Тематика определяется » Python 3 и PyQt. Разработка приложений

Прохоренок Н.А., Python 3 и PyQt. Разработка приложений

BHV, 2012 г., 978-5-9775-0797-4


Описание книги

Описан базовый синтаксис языка Python: типы данных, операторы, условия, циклы, регулярные выражения, встроенные функции, объектно-ориентированное программирование, работа с файлами и каталогами, часто используемые модули стандартной библиотеки. Приведены основы базы данных SQLite, интерфейс доступа к базе и способы получения данных из Интернета. Особое внимание уделено библиотеке PyQt, позволяющей создавать приложения с графическим интерфейсом на языке Python. Рассмотрены способы обработки сигналов и событий, управление свойствами окна, создание формы с помощью программы Qt Designer, работа многопоточных приложений, а также все основные компоненты (кнопки, текстовые поля, списки, таблицы, меню, панели инструментов и др.) и варианты их размещения внутри окна. На сайте издательства приведены все примеры из книги.

Ключевые слова

Поделиться ссылкой на книгу



Содержание книги

Введение
Часть I. Основы Python 3
Глава 1. Первые шаги
1.1. Установка Python
1.2. Первая программа на Python
1.3. Структура программы
1.4. Комментарии
1.5. Скрытые возможности IDLE
1.6. Вывод результатов работы программы
1.7. Ввод данных
1.8. Доступ к документации
Глава 2. Переменные
2.1. Именование переменных
2.2. Типы данных
2.3. Присваивание значения переменным
2.4. Проверка типа данных
2.5. Преобразование типов данных
2.6. Удаление переменной
Глава 3. Операторы
3.1. Математические операторы
3.2. Двоичные операторы
3.3. Операторы для работы с
последовательностями
3.4. Операторы присваивания
3.5. Приоритет выполнения операторов
Глава 4. Условные операторы и циклы
4.1. Операторы сравнения
4.2. Оператор ветвления if...else
4.3. Цикл for
4.4. Функции range() и enumerate()
4.5. Цикл while
4.6. Оператор continue. Переход на следующую
итерацию цикла
4.7. Оператор break. Прерывание цикла
Глава 5. Числа
5.1. Встроенные функции для работы с числами
5.2. Модуль math. Математические функции
5.3. Модуль random. Генерация случайных чисел
Глава 6. Строки
6.1. Создание строки
6.2. Специальные символы
6.3. Операции над строками
6.4. Форматирование строк
6.5. Метод format()
6.6. Функции и методы для работы со строками
6.7. Настройка локали
6.8. Изменение регистра символов
6.9. Функции для работы с символами
6.10. Поиск и замена в строке
6.11. Проверка типа содержимого строки
6.12. Тип данных bytes
6.13. Тип данных bytearray
6.14. Преобразование объекта в
последовательность байтов
6.15. Шифрование строк
Глава 7. Регулярные выражения
7.1. Синтаксис регулярных выражений
7.2. Поиск первого совпадения с шаблоном
7.3. Поиск всех совпадений с шаблоном
7.4. Замена в строке
7.5. Прочие функции и методы
Глава 8. Списки и кортежи
8.1. Создание списка
8.2. Операции над списками
8.3. Многомерные списки
8.4. Перебор элементов списка
8.5. Генераторы списков и выражения-генераторы
8.6. Функции map(), zip(), filter() и reduce()
8.7. Добавление и удаление элементов списка
8.8. Поиск элемента в списке
8.9. Переворачивание и перемешивание списка
8.10. Выбор элементов случайным образом
8.11. Сортировка списка
8.12. Заполнение списка числами
8.13. Преобразование списка в строку
8.14. Кортежи
8.15. Модуль itertools
8.15.1. Генерация неопределенного количества
значений
8.15.2. Генерация комбинаций значений
8.15.3. Фильтрация элементов последовательности
8.15.4. Прочие функции
Глава 9. Словари и множества
9.1. Создание словаря
9.2. Операции над словарями
9.3. Перебор элементов словаря
9.4. Методы для работы со словарями
9.5. Генераторы словарей
9.6. Множества
9.7. Генераторы множеств
Глава 10. Работа с датой и временем
10.1. Получение текущей даты и времени
10.2. Форматирование даты и времени
10.3. "Засыпание" скрипта
10.4. Модуль datetime. Манипуляции датой и
временем
10.4.1. Класс timedelta
10.4.2. Класс date
10.4.3. Класс time
10.4.4. Класс datetime
10.5. Модуль calendar. Вывод календаря
10.5.1. Методы классов TextCalendar и
LocaleTextCalendar
10.5.2. Методы классов HTMLCalendar и
LocaleHTMLCalendar
10.5.3. Другие полезные функции
10.6. Измерение времени выполнения фрагментов
кода
Глава 11. Пользовательские функции
11.1. Создание функции и ее вызов
11.2. Расположение определений функций
11.3. Необязательные параметры и сопоставление
по ключам
11.4. Переменное число параметров в функции
11.5. Анонимные функции
11.6. Функции-генераторы
11.7. Декораторы функций
11.8. Рекурсия. Вычисление факториала
11.9. Глобальные и локальные переменные
11.10. Вложенные функции
11.11. Аннотации функций
Глава 12. Модули и пакеты
12.1. Инструкция import
12.2. Инструкция from
12.3. Пути поиска модулей
12.4. Повторная загрузка модулей
12.5. Пакеты
Глава 13. Объектно-ориентированное
программирование
13.1. Определение класса и создание экземпляра
класса
13.2. Методы __init__() и __del__()
13.3. Наследование
13.4. Множественное наследование
13.5. Специальные методы
13.6. Перегрузка операторов
13.7. Статические методы и методы класса
13.8. Абстрактные методы
13.9. Ограничение доступа к идентификаторам
внутри класса
13.10. Свойства класса
13.11. Декораторы классов
Глава 14. Обработка исключений
14.1. Инструкция try...except...else...finally
14.2. Инструкция with...as
14.3. Классы встроенных исключений
14.4. Пользовательские исключения
Глава 15. Работа с файлами и каталогами
15.1. Открытие файла
15.2. Методы для работы с файлами
15.3. Доступ к файлам с помощью модуля os
15.4. Классы StringIO и BytesIO
15.5. Права доступа к файлам и каталогам
15.6. Функции для манипулирования файлами
15.7. Преобразование пути к файлу или каталогу
15.8. Перенаправление ввода/вывода
15.9. Сохранение объектов в файл
15.10. Функции для работы с каталогами
Глава 16. Основы SQLite
16.1. Создание базы данных
16.2. Создание таблицы
16.3. Вставка записей
16.4. Обновление и удаление записей
16.5. Изменение свойств таблицы
16.6. Выбор записей
16.7. Выбор записей из нескольких таблиц
16.8. Условия в инструкции WHERE
16.9. Индексы
16.10. Вложенные запросы
16.11. Транзакции
16.12. Удаление таблицы и базы данных
Глава 17. Доступ к базе данных SQLite из Python
17.1. Создание и открытие базы данных
17.2. Выполнение запроса
17.3. Обработка результата запроса
17.4. Управление транзакциями
17.5. Создание пользовательской сортировки
17.6. Поиск без учета регистра символов
17.7. Создание агрегатных функций
17.8. Преобразование типов данных
17.9. Сохранение в таблице даты и времени
17.10. Обработка исключений
Глава 18. Взаимодействие с Интернетом
18.1. Разбор URL-адреса
18.2. Кодирование и декодирование строки
запроса
18.3. Преобразование относительной ссылки в
абсолютную
18.4. Разбор HTML-эквивалентов
18.5. Обмен данными по протоколу HTTP
18.6. Обмен данными с помощью модуля
urllib.request
18.7. Определение кодировки
Часть II. Создание оконных приложений
Глава 19. Знакомство с PyQt
19.1. Установка PyQt
19.2. Первая программа
19.3. Структура программы
19.4. ООП-стиль создания окна
19.5. Создание окна с помощью программы Qt
Designer
19.5.1. Создание формы
19.5.2. Загрузка ui-файла в программе
19.5.3. Преобразование ui-файла в py-файл
19.6. Модули PyQt
19.7. Типы данных в PyQt
19.8. Управление основным циклом приложения
19.9. Многопоточные приложения
19.9.1. Класс QThread. Создание потока
19.9.2. Управление циклом внутри потока
19.9.3. Модуль queue. Создание очереди заданий
19.9.4. Классы QMutex и QMutexLocker
19.10. Вывод заставки
19.11. Доступ к документации
Глава 20. Управление окном приложения
20.1. Создание и отображение окна
20.2. Указание типа окна
20.3. Изменение и получение размеров окна
20.4. Местоположение окна на экране
20.5. Указание координат и размеров
20.5.1. Класс QPoint. Координаты точки
20.5.2. Класс QSize. Размеры прямоугольной
области
20.5.3. Класс QRect. Координаты и размеры
прямоугольной области
20.6. Разворачивание и сворачивание окна
20.7. Управление прозрачностью окна
20.8. Модальные окна
20.9. Смена иконки в заголовке окна
20.10. Изменение цвета фона окна
20.11. Использование изображения в качестве
фона
20.12. Создание окна произвольной формы
20.13. Всплывающие подсказки
20.14. Закрытие окна из программы
Глава 21. Обработка сигналов и событий
21.1. Назначение обработчиков сигналов
21.2. Блокировка и удаление обработчика
21.3. Генерация сигнала из программы
21.4. Новый стиль назначения и удаления
обработчиков
21.5. Передача данных в обработчик
21.6. Использование таймеров
21.7. Перехват всех событий
21.8. События окна
21.8.1. Изменение состояния окна
21.8.2. Изменение положения окна и его размеров
21.8.3. Перерисовка окна или его части
21.8.4. Предотвращение закрытия окна
21.9. События клавиатуры
21.9.1. Установка фокуса ввода
21.9.2. Назначение клавиш быстрого доступа
21.9.3. Нажатие и отпускание клавиши на
клавиатуре
21.10. События мыши
21.10.1. Нажатие и отпускание кнопки мыши
21.10.2. Перемещение указателя
21.10.3. Наведение и выведение указателя
21.10.4. Прокрутка колесика мыши
21.10.5. Изменение внешнего вида указателя мыши
21.11. Технология drag & drop
21.11.1. Запуск перетаскивания
21.11.2. Класс QMimeData
21.11.3. Обработка сброса
21.12. Работа с буфером обмена
21.13. Фильтрация событий
21.14. Искусственные события
Глава 22. Размещение нескольких компонентов в
окне
22.1. Абсолютное позиционирование
22.2. Горизонтальное и вертикальное
выравнивание
22.3. Выравнивание по сетке
22.4. Выравнивание компонентов формы
22.5. Классы QStackedLayout и QStackedWidget
22.6. Класс QSizePolicy
22.7. Объединение компонентов в группу
22.8. Панель с рамкой
22.9. Панель с вкладками
22.10. Компонент "аккордеон"
22.11. Панели с изменяемым размером
22.12. Область с полосами прокрутки
Глава 23. Основные компоненты
23.1. Надпись
23.2. Командная кнопка
23.3. Переключатель
23.4. Флажок
23.5. Однострочное текстовое поле
23.5.1. Основные методы и сигналы
23.5.2. Ввод данных по маске
23.5.3. Контроль ввода
23.6. Многострочное текстовое поле
23.6.1. Основные методы и сигналы
23.6.2. Изменение настроек поля
23.6.3. Изменение характеристик текста и фона
23.6.4. Класс QTextDocument
23.6.5. Класс QTextCursor
23.7. Текстовый браузер
23.8. Поля для ввода целых и вещественных чисел
23.9. Поля для ввода даты и времени
23.10. Календарь
23.11. Электронный индикатор
23.12. Индикатор хода процесса
23.13. Шкала с ползунком
23.14. Класс QDial
23.15. Полоса прокрутки
Глава 24. Списки и таблицы
24.1. Раскрывающийся список
24.1.1. Добавление, изменение и удаление
элементов
24.1.2. Изменение настроек
24.1.3. Поиск элемента внутри списка
24.1.4. Сигналы
24.2. Список для выбора шрифта
24.3. Роли элементов
24.4. Модели
24.4.1. Доступ к данным внутри модели
24.4.2. Класс QStringListModel
24.4.3. Класс QStandardItemModel
24.4.4. Класс QStandardItem
24.5. Представления
24.5.1. Класс QAbstractItemView
24.5.2. Простой список
24.5.3. Таблица
24.5.4. Иерархический список
24.5.5. Управление заголовками строк и столбцов
24.6. Управление выделением элементов
24.7. Промежуточные модели
Глава 25. Работа с графикой
25.1. Вспомогательные классы
25.1.1. Класс QColor. Цвет
25.1.2. Класс QPen. Перо
25.1.3. Класс QBrush. Кисть
25.1.4. Класс QLine. Линия
25.1.5. Класс QPolygon. Многоугольник
25.1.6. Класс QFont. Шрифт
25.2. Класс QPainter
25.2.1. Рисование линий и фигур
25.2.2. Вывод текста
25.2.3. Вывод изображения
25.2.4. Преобразование систем координат
25.2.5. Сохранение команд рисования в файл
25.3. Работа с изображениями
25.3.1. Класс QPixmap
25.3.2. Класс QBitmap
25.3.3. Класс QImage
25.3.4. Класс QIcon
Глава 26. Графическая сцена
26.1. Класс QGraphicsScene. Сцена
26.1.1. Настройка параметров сцены
26.1.2. Добавление и удаление графических
объектов
26.1.3. Добавление компонентов на сцену
26.1.4. Поиск объектов
26.1.5. Управление фокусом ввода
26.1.6. Управление выделением объектов
26.1.7. Прочие методы и сигналы
26.2. Класс QGraphicsView. Представление
26.2.1. Настройка параметров представления
26.2.2. Преобразования между координатами
представления и сцены
26.2.3. Поиск объектов
26.2.4. Трансформация систем координат
26.2.5. Прочие методы
26.3. Класс QGraphicsItem. Базовый класс для
графических объектов
26.3.1. Настройка параметров объекта
26.3.2. Трансформация объекта
26.3.3. Прочие методы
26.4. Графические объекты
26.4.1. Линия
26.4.2. Класс QAbstractGraphicsShapeItem
26.4.3. Прямоугольник
26.4.4. Многоугольник
26.4.5. Эллипс
26.4.6. Изображение
26.4.7. Простой текст
26.4.8. Форматированный текст
26.5. Группировка объектов
26.6. Эффекты
26.6.1. Класс QGraphicsEffect
26.6.2. Тень
26.6.3. Размытие
26.6.4. Изменение цвета
26.6.5. Изменение прозрачности
26.7. Обработка событий
26.7.1. События клавиатуры
26.7.2. События мыши
26.7.3. Обработка перетаскивания и сброса
26.7.4. Фильтрация событий
26.7.5. Обработка изменения состояния объекта
Глава 27. Диалоговые окна
27.1. Пользовательские диалоговые окна
27.2. Класс QDialogButtonBox
27.3. Класс QMessageBox
27.3.1. Основные методы и сигналы
27.3.2. Окно для вывода обычного сообщения
27.3.3. Окно запроса подтверждения
27.3.4. Окно для вывода предупреждающего
сообщения
27.3.5. Окно для вывода критического сообщения
27.3.6. Окно "О программе"
27.3.7. Окно "About Qt"
27.4. Класс QInputDialog
27.4.1. Основные методы и сигналы
27.4.2. Окно для ввода строки
27.4.3. Окно для ввода целого числа
27.4.4. Окно для ввода вещественного числа
27.4.5. Окно для выбора пункта из списка
27.5. Класс QFileDialog
27.5.1. Основные методы и сигналы
27.5.2. Окно для выбора каталога
27.5.3. Окна для открытия файла
27.5.4. Окна для сохранения файла
27.6. Окно для выбора цвета
27.7. Окно для выбора шрифта
27.8. Окно для вывода сообщения об ошибке
27.9. Окно с индикатором хода процесса
27.10. Создание многостраничного мастера
27.10.1. Класс QWizard
27.10.2. Класс QWizardPage
Глава 28. Создание SDI- и MDI-приложений
28.1. Создание главного окна приложения
28.2. Меню
28.2.1. Класс QMenuBar
28.2.2. Класс QMenu
28.2.3. Контекстное меню
28.2.4. Класс QAction
28.2.5. Объединение переключателей в группу
28.3. Панели инструментов
28.3.1. Класс QToolBar
28.3.2. Класс QToolButton
28.4. Прикрепляемые панели
28.5. Управление строкой состояния
28.6. MDI-приложения
28.6.1. Класс QMdiArea
28.6.2. Класс QMdiSubWindow
28.7. Добавление иконки приложения в область
уведомлений
Заключение
Приложение. Описание электронного архива
Предметный указатель


Об авторе


Отзывы

Очень толково  [21 December 2013]
Информативно, понятно, без воды, без излишнего усложнения.
Особенно полезна вторая половина (про PyQt) - на русском языке толковы описаний GUI немного, а здесь все разложено по полочкам.
Так себе книжка.  [ 9 October 2012]
Синтаксис питона мне и так известен, поэтому первую часть я пропустил. По поводу второй части - остался разочарован: количество примеров минимально, да и те что есь за 5 минут находятся в гугле. Основная масса страниц - перевод документации,
Брал книгу чтобы написать пару несложных БД для друзей, пока не негуглил гайд в сети, ничего не получалось.

Жалею о потраченых деньгах.
Цифровая дистрибуция  [10 May 2012]
Очень жаль, что цифровой версии этой книги нет в продаже.
python_3  [25 February 2012]
За дифицитом книг по 3-му питону приобрёл себе в коллекцию. По делу: первая половина книги вполне удачна (синтаксис, основы и т.д.), вторая половина про PyQt меня не интересовала, т.к. GUI не кодю).

Последние поступления в рубрике "Тематика определяется"



Ритуальный оракул Магия зеркал, 53 карты + инструкция 

Представляем вам новую профессиональную колоду Любови Никифоровой (Отилы), являющуюся продолжением ранее изданной и уже популярной колоды «Ритуальный Оракул». В ней вы познакомитесь с азами работы с зеркалами, видами магических воздействий и способами их снятия....

Оракул Норн. Нити судьбы, 45 карт+инструкция 

Оракул Норн: нити судьбы - действительно уникальная колода. Предсказывать будущее или узнавать обстоятельства прошлого и настоящего помогают Боги, Богини и герои Древней Скандинавии. Они дают подробное описание грядущих событий, которое напрямую зависит не только от обстоятельств, но и от характера человека, который хочет узнать свое будущее....

Оракул Вселенской любви Ангелов, 72 карты + инструкция 

Оракул Вселенских Ангелов — это уникальная колода карт, созданная для тех, кто ищет направление и поддержку в области любви и добра от духовного мира Ангелов. Колода состоит из 72 карт, на каждой из которых изображен Ангел....

Если Вы задавались вопросами "где найти книгу в интернете?", "где купить книгу?" и "в каком книжном интернет-магазине нужная книга стоит дешевле?", то наш сайт именно для Вас. На сайте книжной поисковой системы Книгопоиск Вы можете узнать наличие книги Прохоренок Н.А., Python 3 и PyQt. Разработка приложений в интернет-магазинах. Также Вы можете перейти на страницу понравившегося интернет-магазина и купить книгу на сайте магазина. Учтите, что стоимость товара и его наличие в нашей поисковой системе и на сайте интернет-магазина книг может отличаться, в виду задержки обновления информации.