Thursday, October 7, 2010

Урок 1, в котором мы пишем нашу первую программу.

На прошлом уроке мы узнали:
  •  A ** B - поднять A в степень B
  • A % B - остаток от деления A на B
  • При делении, если одно (или оба) из чисел записано с дробной частью, результат будет с дробной частью
  • Знак + позволяет складывать цифры или соединять слова
  • Магическое слово print позволяет нам выводить на экран цифры и буквы, а используя символ "," чередовать и выводить на экран любое их количество.

До сих пор мы работали в командной строке пайтона, давали ему одну команду, которую он выполнял и просил следующую. Пришло время создать нашу первую программу, в которой будет целых 2 команды! Запускаем pyscripter, и обращаем внимание на 2 окошка, верхнее, с ярлычком нового файла (module1) и нижнее под именем Python Interpreter. В верхнем мы будем писать наш код, запускать, и получать результат в нижнем окне. Запуск производится по нажатию ctrl+f9. Можно конечно и нажать мышкой на зеленую иконку play, но мы учимся быть продуктивными.

Попробуем написать и запустить:

x=2
print x+3

Нижнее окошко подумало подумало и выдало:
>>>
5
>>>

Отлично!
Умные читатели уже подмигивают нам и доверчиво сообщают "да знаем, знаем, икс это переменная", и они безусловно правы. Но что такое переменная?

Переменная это ячейка в памяти, на которую мы приклеим ярлык с именем, и в которую можно записать любую информацию. Теперь для обращения к этой информации мне достаточно знать имя переменной.

У переменных в пайтоне нет фиксированного типа данных. Мы не должны определять заранее, что вот "x" у нас будет числом целым, или дробью, и так вовеки веков. Пайтон просто радуется что мы хотим что-то куда-то записать.
Попробуем запустить:

x=5
print x
x="moo"
print x

Переменная "х", сначала было числом, потом стала текстом.
Несколько слов о том какие имена можно и нужно давать переменным.

Пайтон требует чтобы первый символ переменной была буква, а дальше разрешает любые латинские буквы (a-z, A-Z) цифры (0-9) и подчеркивание (_).

Крайне важно заметить что переменная VasyaPupkin и vasyapupkin это две разных переменных, и не ошибаться.

Несмотря на то что переменная odinodin1111trolololo считается приемлемой с точки зрения пайтона, она таковой не является. Имя переменной должно описывать что именно мы планируем держать в этой переменной, и за использование одной переменной для разных ролей можно получить тумаков. Кроме того не стоит сокращать переменные в какие-то одним вам понятные аббревиатуры, например video_frames_counter отличное и понятное имя, vfc понятно только вам, да и то в ближайший час.

Домашнее задание:

Вы приехали на выходные в деревню к дяде Паше. У него небольшая ферма - 5 коров, 12 куриц и 32 свинки. Дядя Паша смотрит на ваш гламурный лаптоп, и вы решаете сразить бедного фермера новейшими нанотехнологиями. Напишите программу которая выдаст на экран сколько у дяди Паши коров, куриц и свинок по очереди, а потом общее количество животноводности на ферме.