Файл: Убедись, что установка прошла успешно, открыв приложение Терминал и запустив команду.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 16.03.2024

Просмотров: 168

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Установка Django После запуска virtualenv ты можешь установить Django.Перед этим мы должны удостовериться, что у тебя установлена последняя версия pip — программы, которую мы используем для установки Django.command-line(myvenv) $ python3 -m pip install --upgrade pip Установка библиотек через указание требований Файл с требованиями (requirements) хранит список зависимостей, которые нужно установить с помощью pip install:Для начала создай файл requirements.txt внутри директории djangogirls/, используя текстовый редактор, который ты установила ранее. Просто создай в редакторе новый файл, а затем сохрани его под именем requirements.txt в директории djangogirls/. После этого твоя директория будет выглядеть так:djangogirls└───requirements.txtВ файл djangogirls/requirements.txt нужно добавить такой текст:djangogirls/requirements.txtDjango=3.2.10Теперь выполни команду pip install -r requirements.txt, чтобы установить Django.command-line(myvenv) $ pip install -r requirements.txtCollecting Django=3.2.10 (from -r requirements.txt (line 1)) Downloading Django-3.2.10-py3-none-any.whl (7.1MB)Installing collected packages: DjangoSuccessfully installed Django-3.2.10Установка_Django:_Windows'>Установка Django: WindowsЕсли при запуске pip в Windows ты получаешь сообщение об ошибке, проверь, что путь к директории с проектом не содержит пробелов или специальных символов (C:\Users\User Name\djangogirls). Если проблема в этом, то, пожалуйста, перенеси свой проект в другое место, адрес которого не будет содержать пробелов и специальных символов (предлагаем C:\djangogirls). Создай новое виртуальное окружение в новой директории, после этого удали старое и попробуй запустить команды выше заново (перемещение виртуального окружения не сработает, поскольку в нём используются абсолютные пути).Установка Django: Windows 8 и Windows 10При попытке установки Django твоя командная строка может зависнуть. Если это произошло, вместо приведённой выше команды используй:command-lineC:\Users\Name\djangogirls> python -m pip install -r requirements.txtУстановка GitGit — это «система управления версиями», используемая множеством программистов. Эта программа отслеживает изменения, происходящие с файлами, чтобы впоследствии можно было восстановить состояние кода на нужный момент времени. Это немного похоже на функцию отслеживания изменений в Microsoft Word, но куда мощнее.Установка GitWindows Настройка Chromebook Примечание Если ты уже прошла раздел Установка, не нужно делать это снова – можно перейти прямо к Введению в PythonЕсли ты не используешь Chromebook, можешь пропустить эту секцию. В противном случае процесс установки будет немного другим, и тебе нужно будет пройти только эту инструкцию по установке. Облачная IDE (PaizaCloud Cloud IDE, AWS Cloud9) Облачная IDE — это инструмент, который предоставляет тебе редактор кода и доступ к компьютеру, запущенному в интернете. На этом удалённом компьютере ты можешь устанавливать, создавать и запускать программы. На время прохождения этого руководства облачная IDE будет вести себя как локальный компьютер. Ты будешь так же, как и другие участницы с OS X, Ubuntu или Windows, выполнять команды в командной строке, но она будет подключена к компьютеру облачной IDE, который находится где-то в другом месте.Ниже ты увидишь инструкции для настройки облачных IDE (PaizaCloud Cloud IDE, AWS Cloud9). Ты можешь выбрать одну из них и выполнить соответствующие действия. PaizaCloud Cloud IDE Перейди на сайт PaizaCloud Cloud IDE Войди в свой аккаунт Нажми New Server Нажми кнопку Terminal (в левой части окна) Теперь ты должна увидеть интерфейс с боковой панелью, кнопки расположены слева. Нажми кнопку "Terminal", чтобы открыть командную строку. Ты увидишь приглашение командной строки:Terminal$Командная строка в PaizaCloud Cloud IDE готова к твоим командам. Ты можешь изменить размер этого окна, чтобы сделать его немного больше. AWS Cloud9 Перейди на сайт AWS Cloud9 Войди в свой аккаунт Нажми Create Environment Теперь ты должна увидеть интерфейс с боковой панелью, большим основным окном с текстом, а также маленьким окошком снизу, которое выглядит как-то так:bashyourusername:/workspace $Эта область внизу и есть твоя командная строка. Ты можешь использовать её, чтобы давать команды удалённому компьютеру в Cloud9. Ты можешь изменить размер этого окна, чтобы сделать его немного больше. Виртуальное окружение Виртуальное окружение (его также называют virtualenv) похоже на личную коробку, куда мы можем сложить полезный код для проекта, над которым работаем. Виртуальные окружения нужны нам, чтобы держать отдельно разные кусочки кода для наших проектов — так они не перемешаются между разными проектами.В твоей командной строке в нижней части интерфейса Cloud 9 запусти следующие команды:Cloud 9sudo apt updatesudo apt install python3.6-venvЕсли они не сработают, попроси своего тренера помочь.Далее запусти:Cloud 9mkdir djangogirlscd djangogirlspython3.6 -mvenv myvenvsource myvenv/bin/activatepip install django=3.2.10(обрати внимание, что в последней строчке мы используем сочетание тильды и знака равенства: 

Как работает Интернет

Знакомство с командной строкой Для тех, кто проходит руководство дома: о материале этой главы рассказывает видео Ваш новый друг — командная строка.Вот это да! Всего через несколько минут ты напишешь свою первую строку кода! :)Позволь представить нашего первого нового друга: командную строку!Следующие шаги покажут, как использовать чёрное окно, которым пользуются все хакеры. В начале оно может показаться немного пугающим, но, на самом деле это просто окно, которое ждет от тебя команды.Примечание Пожалуйста, обрати внимание, что в этом руководстве мы используем термины «каталог» и «папка» взаимозаменяемо: эти слова обозначают одно и то же. Что такое командная строка? Окно, которое обычно называют командной строкой или интерфейсом командной строки (англ. CLI, Command Line Interface), является текстовым приложением для просмотра, обработки и манипулирования файлами на вашем компьютере. Она делает то же, что и Проводник в Windows или Finder в Mac OS X, но у неё нет графического интерфейса. Другими названиями для командной строки являются: cmd, CLI, prompt, консоль или терминал. Открываем интерфейс командной строки Для того, чтобы начать экспериментировать, нам нужно сначала открыть интерфейс командной строки.WindowsВ зависимости от твоей версии Windows и того, какая у тебя клавиатура, одно из следующих действий откроет окно командной строки (возможно, придётся немного поэкспериментировать, но все варианты пробовать необязательно): Перейди в меню Пуск (или на экран Пуск), в строке поиска набери "Командная строка". Перейди в меню Пуск → Windows → Командная строка. Перейди в меню Пуск → Все программы → Служебные → Командная строка. Перейди на экран Пуск, наведи мышь на нижний левый угол экрана и нажми на стрелочку вниз, которая появится там. (Если у тебя тачскрин, листни пальцем снизу вверх.) Откроется страница "Приложения". Выбери пункт "Командная строка" в разделе "Windows". Удерживая клавишу Windows на клавиатуре, нажми X. В появившемся меню выбери пункт "Командная строка". Удерживая клавишу Windows, нажми R, чтобы появилось окно "Выполнить". Набери в строке cmd и нажми OK. В какой-то момент тебе понадобятся два окна командной строки одновременно. Однако в некоторых версиях Windows, если ты попытаешься запустить вторую командную строку, когда одна уже запущена тем же способом, ты вместо этого попадёшь в уже открытое окно командной строки. Попробуй у себя на компьютере и посмотри, что будет! Если у тебя получается открыть только одно окно командной строки, попробуй какой-нибудь другой из вышеприведённых способов в списке. По крайней мере один из них сможет открыть новое окно командной строки.OS XLinux Командная строка Перед тобой должно появиться белое или чёрное окошко. Оно ожидает, когда ты введёшь команду.OS X и LinuxWindowsПеред каждой твоей командой будет стоять знак $ или > и пробел. Но тебе не нужно их печатать! Компьютер уже сделал это за тебя. :)Небольшое примечание: перед курсором командной строки может быть написано что-то вроде C:\Users\ola> или Olas-MacBook-Air:

Твоя первая команда (УРА!)

Основы

Подведём итоги

Готова продолжить?

Введение в Python

Консоль Python

Твоя первая команда Python!

Строки

Ошибки

Переменные

Функция print

Списки

Словари

Сравнения

Логические значения

Сохраняй!

If...elif...else

Комментарии

Твоя собственная функция!

Циклы

Установка Django

Виртуальное окружение

Работаем с virtualenv

Установка Django После запуска virtualenv ты можешь установить Django.Перед этим мы должны удостовериться, что у тебя установлена последняя версия pip — программы, которую мы используем для установки Django.command-line(myvenv) $ python3 -m pip install --upgrade pip Установка библиотек через указание требований Файл с требованиями (requirements) хранит список зависимостей, которые нужно установить с помощью pip install:Для начала создай файл requirements.txt внутри директории djangogirls/, используя текстовый редактор, который ты установила ранее. Просто создай в редакторе новый файл, а затем сохрани его под именем requirements.txt в директории djangogirls/. После этого твоя директория будет выглядеть так:djangogirls└───requirements.txtВ файл djangogirls/requirements.txt нужно добавить такой текст:djangogirls/requirements.txtDjango=3.2.10Теперь выполни команду pip install -r requirements.txt, чтобы установить Django.command-line(myvenv) $ pip install -r requirements.txtCollecting Django

Твой первый проект на Django!

Изменяем настройки Давай внесём изменения в mysite/settings.py. Открой файл в текстовом редакторе, который ты выбрала ранее.Примечание: помни, что settings.py — самый обычный файл. Ты можешь открыть его из своего редактора кода, используя меню «Файл -> Открыть». При этом ты увидишь обычное окно, в котором ты можешь перейти к своему файлу settings.py и выбрать его. Либо ты можешь открыть этот файл, перейдя в директорию проекта djangogirls на твоём рабочем столе и щёлкнув по нему правой кнопкой мыши; затем выбери свой редактор кода из предложенного списка. Важно выбрать именно редактор, поскольку у тебя могут быть установлены программы, которые откроют наш файл, но не позволят его изменить.Было бы неплохо установить корректный часовой пояс на нашем сайте. Перейди к списку часовых поясов википедии и скопируй название своего часового пояса (TZ) (например, Europe/Moscow).В файле settings.py найди строку, содержащую TIME_ZONE, и измени её в соответствии со своим часовым поясом:mysite/settings.pyTIME_ZONE = 'Europe/Moscow'Код языка состоит из сокращённого названия языка, например en для английского или ru для русского, и кода страны, например, ru для России или ch для Швейцарии. Тебе понадобится эта настройка, если ты хочешь, чтобы все встроенные кнопки и уведомления от Django были на твоём языке. Таким образом, надпись на кнопке «Cancel» будет переведена на заданный тобой язык. Django поставляется с большим набором готовых переводов.Измени язык, отредактировав следующую строку:mysite/settings.pyLANGUAGE_CODE = 'ru-ru'Нам также необходимо добавить в настройки информацию о расположении статических файлов (мы познакомимся со статическими файлами и CSS в следующих главах). Спустись в конец файла и после переменной STATIC_URL добавь новую — STATIC_ROOT:mysite/settings.pySTATIC_URL = '/static/'STATIC_ROOT = os.path.join(BASE_DIR, 'static')Когда наcтройка DEBUG имеет значение True, а настройка ALLOWED_HOSTS пуста, имя хост твоего веб-сайта сверяется со списком ['localhost', '127.0.0.1', '[::1]']. Ни одно из значений не будет соответствовать имени хоста на PythonAnywhere при публикации нашего приложения, поэтому нам необходимо изменить следующую настройку:mysite/settings.pyALLOWED_HOSTS = ['127.0.0.1', '.pythonanywhere.com']Примечание: В случае если вы используете Chromebook, добавьте следующую строку в конец файла settings.py: MESSAGE_STORAGE = 'django.contrib.messages.storage.session.SessionStorage' Настройка базы данных Существует множество различных баз данных, которые могут хранить данные для твоего сайта. Мы будем использовать стандартную — sqlite3.Она уже выбрана по умолчанию в файле mysite/settings.py:mysite/settings.pyDATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), }}Чтобы создать базу данных для нашего блога, набери в командной строке следующее: python manage.py migrate (мы должны быть в директории djangogirls, где расположен файл manage.py). Если всё прошло успешно, то ты увидишь следующий результат:command-line(myvenv)

Запуск веб-сервера Ты должна быть в директории, где расположен файл manage.py (в нашем случае — djangogirls). Запустим веб-сервер из командной строки: python manage.py runserver:command-line(myvenv) /djangogirls$ python manage.py runserverЕсли ты работаешь в Windows, и команда падает с ошибкой UnicodeDecodeError, используй вместо неё другую:command-line(myvenv)

Модели Django

Объекты

Модель в Django Зная, что представляет из себя объект, мы можем создать модель Django для записи в блоге.Модель в Django — это объект определённого свойства: он хранится в базе данных. База данных представляет собой совокупность различных данных. Это то место, где ты будешь хранить информацию о своих пользователях, записях в блоге и т.д. Мы будем использовать базу данных SQLite для хранения информации. Это стандартная база данных в Django — её сейчас вполне хватит для наших нужд.Ты можешь представить модель в базе данных как электронную таблицу с колонками (полями) и строками (данными). Создание приложения Для аккуратности мы создадим отдельное приложение в нашем проекте. Очень удобно иметь хорошо организованное рабочее место с самого начала. Для создания приложения нам понадобится набрать следующую инструкцию в командной строке (из директории djangogirls, где находится файл manage.py):Mac OS X и Linux:(myvenv) /djangogirls$ python manage.py startapp blogWindows:(myvenv) C:\Users\Name\djangogirls> python manage.py startapp blogОбрати внимание, что в нашем проекте появилась новая папка blog, которая содержит некоторые файлы. Таким образом, структура нашего проекта будет выглядеть так:djangogirls├── blog│ ├── __init__.py│ ├── admin.py│ ├── apps.py│ ├── migrations│ │ └── __init__.py│ ├── models.py│ ├── tests.py│ └── views.py├── db.sqlite3├── manage.py└── mysite ├── __init__.py ├── settings.py ├── urls.py └── wsgi.pyПосле того, как приложение создано, нам нужно сообщить Django, что теперь он должен его использовать. Мы сделаем это с помощью файла mysite/settings.py. Нам нужно найти INSTALLED_APPS и добавить к списку 'blog', прямо перед ]. Конечный результат должен выглядеть следующим образом:mysite/settings.pyINSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog',] Создание модели записи в блоге В файле blog/models.py мы определяем все Модели — модель записи для блога также пойдёт сюда.Открой файл blog/models.py, удали весь текст и вставь на его место следующий код:blog/models.pyfrom django.conf import settingsfrom django.db import modelsfrom django.utils import timezoneclass Post(models.Model): author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) title = models.CharField(max_length=200) text = models.TextField() created_date = models.DateTimeField(default=timezone.now) published_date = models.DateTimeField(blank=True, null=True) def publish(self): self.published_date = timezone.now() self.save() def __str__(self): return self.titleУбедись, что использовала два символа нижнего подчёркивания (_) с обеих сторон от метода str. Это соглашение часто используется при программировании на Python, и иногда его называют "dunder" (сокращение от англ. "double-underscore").Смотрится страшно, да? Но не волнуйся, мы объясним, что значит каждая строка кода!Строки, начинающиеся с from или import, открывают доступ к коду из других файлов. Так что вместо того, чтобы копировать и вставлять один и тот же код во все файлы, ты можешь сослаться на него при помощи from ... import ....class Post(models.Model): — эта строка определяет нашу модель (объект). class — это специальное ключевое слово для определения объектов. Post — это имя нашей модели, мы можем поменять его при желании (специальные знаки и пробелы использовать нельзя). Всегда начинай имена классов с прописной буквы. models.Model означает, что объект Post является моделью Django, так Django поймет, что он должен сохранить его в базу данных. Дальше мы задаем свойства, о которых уже говорили: title, text, created_date, published_date и author. Чтобы это сделать, нам нужно определиться с типом полей (это текст? число? дата? ссылка на другой объект? например, на пользователя?). models.CharField — так мы определяем текстовое поле с ограничением на количество символов. models.TextField — так определяется поле для неограниченно длинного текста. Выглядит подходящим для содержимого поста, верно? models.DateTimeField — дата и время. models.ForeignKey — ссылка на другую модель. Мы не будем объяснять каждую запятую, поскольку на это уйдет слишком много времени. Ознакомься с официальной документаций Django: если хочешь узнать больше о полях моделей и о том, как определять разные объекты, то эта ссылка может помочь: https://docs.djangoproject.com/en/1.11/ref/models/fields/#field-types.Что насчёт def publish(self):? Это как раз метод публикации для записи, о котором мы говорили. def означает, что создаётся функция/метод, а publish — это название этого метода. Можно изменить имя метода, если хочешь. Существует правило для имён функций: нужно использовать строчные буквы, а пробелы заменять на подчёркивания. Например, метод, вычисляющий среднюю цену, может называться calculate_average_price.Методы часто возвращают что-то. Например, метод __str__. В нашем случае после вызова метода __str__() мы получим текст (строку) с заголовком записи.Также обрати внимание, что оба метода def publish(self): и def __str__(self): внутри класса имеют дополнительный отступ. Поскольку в Python важны отступы, нам необходимо использовать их для методов внутри класса — иначе методы не будут принадлежать к классу, и при запуске программы может получиться что-то неожиданное.Если тема моделей тебе до сих пор непонятна — не стесняйся обратиться к тренеру! Мы знаем, что она действительно сложна, особенно когда ты изучаешь параллельно объекты и функции. Но мы надеемся, что всё это больше не кажется тебе магией! Создаём таблицы моделей в базе данных Последним шагом будет добавление нашей модели в базу данных. Сначала мы должны дать Django знать, что сделали изменения в нашей модели (мы её только что создали!). Набери python manage.py makemigrations blog. Должно получиться примерно так:command-line(myvenv) /djangogirls$ python manage.py makemigrations blogMigrations for 'blog': blog/migrations/0001_initial.py: - Create model PostПримечание: не забудь сохранить отредактированные файлы. Иначе твой компьютер выполнит команду с их предыдущей версией, и могут появиться неожиданные ошибки.Django создал для нас файл с миграцией для базы данных. Набери python manage.py migrate blog, результат должен быть следующим:command-line(myvenv)

Администрирование Django Чтобы добавлять, редактировать и удалять записи, для которых мы только что создали модель, мы используем панель управления администратора Django.Давай откроем файл blog/admin.py и заменим его содержимое на:blog/admin.pyfrom django.contrib import adminfrom .models import Postadmin.site.register(Post)Как ты можешь заметить, мы импортировали (включили) модель Post, которую определили в предыдущей главе. Чтобы наша модель стала доступна на странице администрирования, нам нужно зарегистрировать её при помощи admin.site.register(Post).Хорошо, теперь нам нужно взглянуть на модель Post. Не забудь запустить веб-сервер командой python manage.py runserver. Перейди в браузер и набери адрес http://127.0.0.1:8000/admin/. Ты увидишь страницу авторизации: Чтобы залогиниться, тебе сначала нужно создать суперпользователя (англ. superuser) — пользователя, который имеет полный доступ к управлению сайтом. Вернись к командной строке, набери python manage.py createsuperuser, и нажми Enter.Не забудь: чтобы выполнять команды во время работы сервера, открой новое окно терминала и активируй в нём виртуальное окружение. Мы описывали ввод новых команд в разделе Запуск веб-сервера главы Твой первый проект на Django!.При появлении запроса введи имя пользователя (строчными буквами, без пробелов), адрес электронной почты и пароль. Не беспокойся, если пароль не появляется на экране по мере ввода, так и задумано. Просто напечатай его и нажми Enter, чтобы продолжить. Результат должен выглядеть следующим образом (имя пользователя и почта, соответственно, будут твоими):command-line(myvenv) /djangogirls$ python manage.py createsuperuserUsername: adminEmail address: admin@admin.comPassword:Password (again):Superuser created successfully.Вернись в браузер и войди в систему при помощи имени пользователя и пароля, которые ты только что выбрала. Ты должна попасть в панель управления Django. Перейди к разделу Posts и немного поэкспериментируй с ним. Добавь пять или шесть постов. Не беспокойся о содержании — можешь просто скопировать и вставить текст из этого учебника, чтобы сэкономить время :)Убедись, что выбрала для двух или трёх записей (но не больше) дату публикации. Это пригодится позднее. Если ты хочешь узнать больше об администрировании Django, то ознакомься с этим разделом официальной документации: https://docs.djangoproject.com/en/1.11/ref/contrib/admin/.Сейчас, вероятно, подходящий момент, чтобы порадовать себя кружечкой кофе (или чая), а также съесть чего-нибудь для восполнения энергии. Ты только что создала свою первую модель Django и заслужила перерыв!Публикация в Интернете!Примечание: Эта глава может показаться сложной. Будь упорна, развертывание сайта на сервере является важной частью веб-разработки. Данная глава намеренно расположена в середине учебника для того, чтобы твой наставник смог помочь с таким мудреным процессом, как публикация сайта. Так ты сможешь самостоятельно закончить все главы, даже если время будет поджимать.До настоящего момента твой сайт был доступен только для локального просмотра, теперь же ты узнаешь, как развернуть его на удалённом сервере! Развертывание (deploy) — это процесс публикации приложения в интернете, чтобы люди могли наконец увидеть твое творение :)Как ты уже знаешь, веб-сайт должен располагаться на сервере. Есть много компаний, предоставляющих сервера в интернете. Мы воспользуемся услугами одной из них, с довольно простым процессом публикации: PythonAnywhere. PythonAnywhere бесплатен для маленьких приложений с небольшим числом посетителей, и этого будет для нас более чем достаточно.Другим внешним сервисом, которым мы воспользуемся, будет GitHub — сервис хостинга кода. Существуют и другие похожие сервисы, но практически у каждого программиста есть GitHub аккаунт, теперь будет и у тебя!В итоге твой код будет в трёх местах. На локальном компьютере ты будешь заниматься разработкой и тестированием. Когда результат тебя устроит, ты загрузишь свою программу на GitHub. А твой сайт будет на PythonAnywhere, и ты сможешь обновлять его, просто загружая новую версию кода с GitHub.GitПримечание: если ты уже выполнила установку, незачем повторять её вновь — можешь сразу переходить к следующему разделу и начать создание собственного Git-репозитория.Git — это «система управления версиями», используемая множеством программистов. Эта программа отслеживает изменения, происходящие с файлами, чтобы впоследствии можно было восстановить состояние кода на нужный момент времени. Это немного похоже на функцию отслеживания изменений в Microsoft Word, но куда мощнее.Установка GitWindowsТы можешь загрузить Git с официального сайта git-scm.com. Ты можешь нажимать "дальше, дальше, дальше" на всех этапах установки за исключением одного: на пятом шаге, который называется "Adjusting your PATH environment" (Настройка системной переменной Path), выбери "Use Git and optional Unix tools from the Windows Command Prompt" (Запуск Git и соответствующих Unix утилит через командную строку Windows, нижняя опция). Все остальные настройки можно оставить по умолчанию. Также неплохо будет выбрать опцию "Checkout Windows-style, commit Unix-style line endings".После окончания установки не забудь перезапустить командную строку или PowerShell.OS XDebian и UbuntuFedoraopenSUSEСоздаём Git-репозиторийGit отслеживает изменения определенного набора файлов, который называется репозиторием (сокращенно "репо"). Давайте создадим такой для нашего проекта. Открой консоль и запусти эти команды в папке djangogirls:Примечание: проверь текущий рабочий каталог с помощью команд pwd (OSX/Linux) или cd (Windows) перед инициализацией нового репозитория. Ты должна находиться в директории djangogirls.command-line$ git initInitialized empty Git repository in /djangogirls/.git/$ git config --global user.name "Your Name"$ git config --global user.email you@example.comИнициализировать git-репозиторий придется только один раз за проект (и тебе больше не придется вводить имя пользователя и адрес электронной почты).Git будет отслеживать изменения всех файлов и каталогов в заданной директории, однако некоторые из них мы предпочли бы игнорировать. Для этого нам нужно создать файл .gitignore в корневом каталоге репозитория. Открой редактор и создай новый файл со следующим содержанием:.gitignore*.pyc*

URL-адреса Django

Что такое URL-адрес?

Как URL-адреса работают в Django?

Твой первый URL-адрес в Django!

blog.urls

Представления в Django – время создавать!

blog/views.py

Введение в HTML

Что такое HTML?

Твой первый шаблон!

Head и body

Консоль Python


Для проходящих руководство дома: этот раздел рассмотрен в видео Python Basics: Integers, Strings, Lists, Variables and Errors.

Чтобы начать играть с Python, нам нужно открыть командную строку на твоём компьютере. Ты уже должна знать, как это сделать — мы изучали это в главе Введение в интерфейс командной строки.

Когда будешь готова, следуй приведенным ниже инструкциям.

Мы хотим открыть консоль Python, так что набери python, если работаешь в Windows, или python3 для Mac OS/Linux, и нажми enter.

command-line

$ python3

Python 3.6.1 (...)

Type "help", "copyright", "credits" or "license" for more information.

>>>

Твоя первая команда Python!


После запуска Python командная строка изменилась на >>>. Для нас это означает, что сейчас мы можем использовать только команды на языке Python. Тебе не нужно вводить >>> — Python будет делать это за нас.

Если ты хочешь выйти из консоли Python, в любой момент — просто введи exit() или используй сочетание клавиш Ctrl + Z для Windows и Ctrl + D для Mac/Linux. Тогда ты больше не будешь видеть >>>.

Пока что мы не хотим выходить из консоли Python. Мы хотим узнать больше о ней. Давай начнём с чего-нибудь совсем простого. Например, попробуй набрать простое математическое выражение, вроде 2 + 3, и нажми enter.

command-line

>>> 2 + 3

5

Прекрасно! Видишь, как выскочил ответ? Python знает математику! Ты можешь попробовать другие команды, например:

  • 4 * 5

  • 5 - 1

  • 40 / 2

Чтобы вычислить степень числа, например, 2 в кубе, мы вводим:

command-line

>>> 2 ** 3

8

Поиграй с этим немного и затем вернись сюда :).


Как видишь, Python является прекрасным калькулятором. Если тебе интересно, что ещё можно сделать...

Строки


Как насчет твоего имени? Введи своё имя в кавычках, вот так:

command-line

>>> "Ola"

'Ola'

Ты только что создала свою первую строку! Это последовательность символов, которые могут быть обработаны компьютером. Строка должна всегда начинаться и заканчиваться одинаковым символом. Им может быть одинарная (') или двойная (") кавычка (разницы нет!) Кавычки говорят Python'у, что внутри них находится строка.

Строки могут быть слиты воедино. Попробуй так:

command-line

>>> "Hi there " + "Ola"

'Hi there Ola'

Ты также можешь умножать строки на число:

command-line

>>> "Ola" * 3

'OlaOlaOla'

Если тебе нужно поставить апостроф внутри строки, то есть два способа сделать это.

Используй двойные кавычки:

command-line

>>> "Runnin' down the hill"

"Runnin' down the hill"

или поставь перед апострофом обратную косую черту (\):

command-line

>>> 'Runnin\' down the hill'

"Runnin' down the hill"

Прикольно, да? Чтобы увидеть своё имя прописными буквами, просто набери:

command-line

>>> "Ola".upper()

'OLA'

Ты только что использовала метод upper своей строки! Метод (такой как upper()) представляет собой набор инструкций, который должен выполнить Python над заданным объектом (в нашем случае: "Ola") при его вызове.

Если ты хочешь узнать количество букв в своём имени, то и для этого тоже существует функция!

command-line

>>> len("Ola")

3

Интересно, почему иногда мы вызываем функцию добавлением . к концу строки (как "Ola".upper()), а иногда сначала пишем имя функции и затем помещаем строку в скобки? Ну, в некоторых случаях функции принадлежат объектам, например, функция 
upper(), которая может быть применена только к строкам. В этом случае мы называем функцию методом. В другом случае функции не относятся к чему-то конкретному и могут использоваться для различных типов объектов, например, функция len(). Вот почему мы передаем "Ola" в качестве параметра функции len.

Подведём итог


Хорошо, достаточно о строках. Пока ты узнала следующее:

  • командная строка — ввод команд (кода) в интерактивную командную строку Python приводит к ответам на Python;

  • числа и строки — в Python числа используются для вычислений, а строки - для текстовых объектов;

  • операторы, такие как + и *, объединяют значения для получения нового;

  • функции, такие как upper() и len(), выполняют действия над объектами.

Таковы основы каждого языка программирования, который ты можешь выучить. Готова к чему-то посложнее? Мы уверены, что готова!

Ошибки


Давай попробуем кое-что новенькое. Можем ли мы получить длину числа так же, как длину твоего имени? Введи len(304023) и нажми Enter:

 command-line

>>> len(304023)

Traceback (most recent call last):

File "", line 1, in

TypeError: object of type 'int' has no len()

Мы получили нашу первую ошибку! Иконкой  мы будем обозначать код, который при запуске сработает не так, как ожидается. Совершение ошибок (даже преднамеренных) -- важная часть обучения!

Она говорит о том, что у объектов типа «int» (целые числа) нет длины. Так что же мы можем сейчас сделать? Может быть, мы можем написать наше число в виде строки? У строк ведь есть длина, верно?

command-line

>>> len(str(304023))

6

Сработало! Мы использовали функцию str внутри функции lenstr() преобразует всё в строки.

  • Функция str преобразует объекты в строки

  • Функция int преобразует объекты в целые числа

Важно: мы можем преобразовать число в текст, но не всегда удается преобразовать текст в числа — например, каков будет результат int('hello')?

Переменные


Переменные — важное понятие в программировании. Переменная — это всего лишь имя для чего-то, чтобы использовать его позднее. Программисты используют переменные для хранения данных, чтобы их код был более читабельным, и для того, чтобы им не пришлось запоминать, что есть что.


Допустим, мы хотим создать новую переменную с именем name:

command-line

>>> name = "Ola"

Видишь? Это очень легко! Просто введи: name равно Ola.

Как ты уже заметила, твоя программа не возвращает ничего, как было ранее. Так откуда мы знаем, что переменная действительно существует? Просто введи name и нажми Enter:

command-line

>>> name

'Ola'

Ура! Твоя первая переменная:)! Ты всегда можешь изменить то, к чему она относится:

command-line

>>> name = "Sonja"

>>> name

'Sonja'

Ты также можешь использовать переменные и в функциях:

command-line

>>> len(name)

5

Круто, правда? Переменными, конечно, может быть что угодно, и цифры тоже! Попробуй следующее:

command-line

>>> a = 4

>>> b = 6

>>> a * b

24

Но что делать, если мы использовали неправильное имя? Можешь догадаться, что произойдет? Давай попробуем!

 command-line

>>> city = "Tokyo"

>>> ctiy

Traceback (most recent call last):

File "", line 1, in

NameError: name 'ctiy' is not defined

Ошибка! Как ты можешь видеть, в Python есть различные типы ошибок, эта называется NameError. Python выдаст эту ошибку при попытке использовать переменную, которая пока не определена. При возникновении этой ошибки проверь свой код, чтобы узнать, не написала ли ты неправильно имя переменной.

Попрактикуйся в этом какое-то время и посмотри, что ты сможешь сделать!