Опубликован: 14.06.2015 | Доступ: свободный | Студентов: 7372 / 1136 | Длительность: 09:49:00
Авторские права: Creative Commons Attribution 3.0

Лекция 2: Переменные, выражения и инструкции (Variables, expressions and statements)

2.9. Строковые операции

Оператор + работает со строками, но это не сложение в математическом смысле. Вместо этого, выполняется операция конкатенации (concatenation), которая объединяет строки одна за другой. Например,

>>> first = 10
>>> second = 15
>>> print first+second
25
>>> first = '100'
>>> second = '150'
>>> print first + second
100150

2.10. Ввод входных данных

Иногда необходимо вводить значение переменной, используя клавиатуру. Python предоставляет встроенную функцию raw_input, которая получает входные значения с клавиатуры. В новой версии Python 2.0 эта функция носит название input. Когда вызывается эта функция, программа останавливается и ожидает действий пользователя. Когда пользователь нажимает Return или Enter, программа продолжает выполнение, и raw_input возвращает введенную пользователем строку.

>>> input = raw_input()
Some silly stuff
>>> print input
Some silly stuff

Перед тем, как получить от пользователя некоторые данные, будет хорошим тоном – вывести на экран информацию о том, что пользователю необходимо ввести. Вы можете передать эту информацию в качестве входного параметра функции raw_input:

>>> name = raw_input('What is your name?\n')
What is your name?
Chuck
>>> print name
Chuck

Последовательность \n в конце приглашения обозначает новую строку (newline), поэтому пользователь начинает ввод со следующей после приглашения строки.

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

>>> prompt = 'What...is the airspeed velocity of an unladen 
swallow?\n'
>>> speed = raw_input(prompt)
What...is the airspeed velocity of an unladen swallow?
17
>>> int(speed)
17
>>> int(speed) + 5
22

Не всегда преобразование типов проходит гладко:

>>> speed = raw_input(prompt)
What...is the airspeed velocity of an unladen swallow?
What do you mean, an African or a European swallow?
>>> int(speed)


Traceback (most recent call last):
     File "<pyshell#10>", line 1, in <module>
       int(speed)
       
ValueError: invalid literal for int() with base 10: 'What do you 
mean, an African or a European swallow?'

Позже мы рассмотрим, как обрабатывать подобные ошибки.

2.11. Комментарии

Когда программы разрастаются то, их становится сложно читать. Чтобы упростить чтение отдельных частей программы в программу добавляются заметки, которые на человеческом языке рассказывают, что программа делает. Эти заметки называются комментариями и начинаются с символа #.

# compute the percentage of the hour that has elapsed
percentage = (minute * 100) / 60

Комментарии можно оставлять в конце выражения:

percentage = (minute * 100) / 60 # percentage of an hour

Весь текст, начиная от # и до конца строки, игнорируется Python.

Комментарии призваны ответить на вопрос "почему?". Они обычно содержат полезную информацию, которой НЕТ в коде.

Алексей Виноградов
Алексей Виноградов

Видеокурс выложен на сайте Altube.ru вместо Youtube и плеер Altube не поддерживает субтитры. Прошу решить вопрос о предоставлении русских субтитров в этом англоязычном видеокурсе.

Петр Олейников
Петр Олейников

Данные файлы неоходимы не только для самостоятельных работ, но и для тестов. А по ссылкам в лекциях они не доступны, выдает ошибку 404.