Python с нуля

.

Анонс

Третья версия языка Python сделала его еще более мощным, удобным, логичным и выразительным. Книга «Программирование на Python 3» написана одним из ведущих специалистов по этому языку, обладающим многолетним опытом работы с ним.

Программирование на Python: от новичка до профессионала

Издание содержит все необходимое для практического освоения языка: написания любых программ с использованием как стандартной библиотеки, так и сторонних библиотек для языка Python 3, а также создания собственных библиотечных модулей.
Автор начинает с описания ключевых элементов Python, знание которых необходимо в качестве базовых понятий. Затем обсуждаются более сложные темы, поданные так, чтобы читатель мог постепенно наращивать свой опыт: распределение вычислительной нагрузки между несколькими процессами и потоками, использование сложных типов данных, управляющих структур и функций, создание приложений для работы с базами данных SQL и с файлами DBM.
Книга может служить как учебником, так и справочником. Текст сопровождается многочисленными примерами, доступными на специальном сайте издания. Весь код примеров был протестирован с окончательным релизом Python 3 в ОС Windows, Linux и Mac OS X.

Основы программирования Python

Здесь собраны уроки и задачи по языку программирования Python. Курсы писались, когда я вела кружок по программированию. Основной контингент был — подростки. В дальнейшем возможно их изменю и усложню под более взрослую аудиторию.

Если вы хотите изучить программирование с нуля, то придерживайтесь такой последовательности изучения:

  1. Введение в программирование. Рассматриваются базовые данные, переменные, ветвления, циклы, функции, списки, словари, кортежи.
  2. Алгоритмы и задачи
  3. Объектно-ориентированное программирование. Наиболее распространенная на сегодняшний день парадигма программирования. Включает представления о классе и его объектах, наследовании, полиморфизме, инкапсуляции (которая для Питона не слишком актуальна).
  4. Программирование графического интерфейса. Это создание программ с окошками и кнопками. В данном курсе используется библиотека Tkinter, т. к. она наиболее простая.

Пункт 2 можно опустить.

Проще всего создать динамические страницы на Python при помощи CGI-скриптов. CGI-скрипты — это исполняемые файлы, которые выполняются веб-сервером, когда в URL запрашивается соответствующий скрипт.

Сегодня я расскажу про то, как написать Hello world, как CGI-скрипт.

Настройка локального сервера

В Python уже есть встроенный CGI сервер, поэтому его настройка элементарна.

Для запуска из консоли (для любителей linux-систем).

10 полезных ресурсов для обучения Python

Запускать нужно из той папки, где мы хотим работать:

python3 -m http.server —cgi

Для сидящих на Windows чуть проще будет запуск Python файла (заметьте, что он должен находиться в той же папке, в которой мы планируем работать!):

fromhttp.serverimportHTTPServer,CGIHTTPRequestHandlerserver_address=(«»,8000)httpd=HTTPServer(server_address,CGIHTTPRequestHandler)httpd.serve_forever()

Теперь откройте браузер и в адресной строке наберите localhost:8000

Если у вас примерно такая же картина, значит, у вас все заработало!

Hello world

Теперь в той папке, где мы запустили сервер, создаём папку cgi-bin (у меня она уже создана).

В этой папке создаём скрипт hello.py со следующим содержимым:

#!/usr/bin/env python3print(«Content-type: text/html»)print()print(«<h1>Hello world!</h1>»)

Первая строка говорит о том, что это Python скрипт (CGI-скрипты можно не только на Python писать).

Вторая строка печатает заголовок. Он обозначает, что это будет html файл (бывает ещё css, javascript, pdf и куча других, и браузер различает их по заголовкам).

Третья строка (просто символ новой строки) отделяет заголовки от тела ответа.

Четвёртая печатает Hello world.

Теперь переходим на localhost:8000/cgi-bin/hello.py

И радуемся!

Если у вас не работает, проверьте, установлены ли права на выполнение.

Также в консоли запущенного сервера появляются сообщения об ошибках.

Например, убрал скобочку и обновил страницу:

В следующей части мы рассмотрим обработку данных форм и cookies.

Каждому изучающему Python нужно писать код для закрепления. Вашему вниманию предлагаются несколько задач для реализации (не слишком простых (кроме первой) и не слишком сложных).

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

Также для этих задач есть репозиторий с тестами и моими решениями (чтобы проверить себя).

Для запуска тестов для вашей функции проще всего будет добавить код из папки с тестами в конец файла с функцией.

А теперь, собственно, задачи:

Простейшие арифметические операции (1)

Написать функцию , принимающую 3 аргумента: первые 2 — числа, третий — операция, которая должна быть произведена над ними.

Язык программирования Python — с чего начинать?

Если третий аргумент , сложить их; если , то вычесть; — умножить; — разделить (первое на второе). В остальных случаях вернуть строку «».

Високосный год (2)

Написать функцию , принимающую 1 аргумент — год, и возвращающую True, если год високосный, и False иначе.

Квадрат (3)

Написать функцию , принимающую 1 аргумент — сторону квадрата, и возвращающую 3 значения (с помощью кортежа): периметр квадрата, площадь квадрата и диагональ квадрата.

Времена года (4)

Написать функцию , принимающую 1 аргумент — номер месяца (от 1 до 12), и возвращающую время года, которому этот месяц принадлежит (, , или ).

Банковский вклад (5)

Пользователь делает вклад в размере рублей сроком на лет под 10% годовых (каждый год размер его вклада увеличивается на 10%. Эти деньги прибавляются к сумме вклада, и на них в следующем году тоже будут проценты).

Написать функцию , принимающая аргументы и , и возвращающую сумму, которая будет на счету пользователя.

Простые числа (6)

Написать функцию , принимающую 1 аргумент — число от 0 до 1000, и возвращающую True, если оно простое, и False — иначе.

Правильная дата (7)

Написать функцию , принимающую 3 аргумента — день, месяц и год. Вернуть True, если такая дата есть в нашем календаре, и False иначе.

XOR-шифрование (8)

Написать функцию , принимающая 2 аргумента: строку, которую нужно зашифровать, и ключ шифрования, которая возвращает строку, зашифрованную путем применения функции XOR (^) над символами строки с ключом. Написать также функцию , которая по зашифрованной строке и ключу восстанавливает исходную строку.

Самоучитель PYTHON

Вы занимаетесь программированием и хотите повысить свою квалификацию или систематизировать имеющиеся знания и навыки? Хотите изучить перспективный язык программирования Python ? Вы — системный администратор или IT-специалист и у Вас возникла необходимость в освоении данного языка программирования?

На курсе Вы освоите синтаксис языка Python, получите базовые навыки структурного и процедурного программирования, познакомитесь с базовыми структурами данных языка Python.

Вы научитесь устанавливать и настраивать среду разработки, применять базовые конструкции Python, создавать модули и пакеты, пользоваться основными структурами данных, выполнять основные операции ввода/вывода.

Также Вы получите необходимую подготовку для изучения объектно-ориентированного программирования на языке Python.

Программа курса:

Модуль 1. Язык программирования Python и его место среди других языков и систем программирования

  • Обзор существующих языков программирования.
  • Основные принципы работы интерпретатора Python.
  • Python на различных операционных системах.
  • Установка и тестирование интерпретатора Python.
  • Установка и тестирование среды разработки Python.

  
Модуль 2. Базовые конструкции языка Python

  • Переменные и выражения
  • Типы данных. Принцип динамической типизации.
  • Арифметика на языке Python
  • Структура программы. Блок
  • Ветвления
  • Базовая форма цикла

  
Модуль 3. Кортежи, списки и словари

  • Кортеж. Основные операции с кортежем.
  • Список. Основные операции со списком.
  • Словарь. Основные операции со словарем.
  • Цикл по итератору.

  
Модуль 4. Обработка исключений

  • Понятие об исключении.
  • Перехват исключения.
  • Выброс исключения.
  • Стандартные исключения.

  
Модуль 5. Функции

  • Создание функции
  • Вызов функции
  • Функция как объект первого порядка
  • Лябмда-функция

  
Модуль 6. Работа с файловой системой

  • Основные операции с файлами.
  • Основные операции с путями к файлам.
  • Рекурсивный обход каталога.

Модуль 7. Пакеты и модули

  • Создание модуля.
  • Импорт модуля.
  • Создание пакета
  • Важнейшие стандартные пакеты

  
Модуль 8. Базовые операции ввода/вывода

  • Потоки ввода/вывода
  • Файлы

  
Модуль 9. Ведение журнала событий и форматирование текстовых строк

  • Понятие о журнале событий.
  • Запись в системный журнал событий.
  • Форматирование текстовых строк.
  • Ведение журнала событий приложения.

  
Модуль 10. Обработка текстовой информации

  • Разновидности символьных строк
  • Кодировки.
  • Регулярные выражения

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *