How to Think Like a Computer Scientist: Learning with Python 2nd Edition. / Как стать программистом: учимся вместе с Python. Второе издание.: Chapter 2 Variables, expressions, and statements
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
2 Переменные, выражения и операции czech 25.06.10 в 08:48 |
|
|
2.1 Значения и типы данных czech 25.06.10 в 08:49 |
||
|
Значение является одним из основополагающих принципов языка, наподобие букв или чисел. Значением является число 2 (как результат вычисления 1 + 1) и строка "Hello, World!" czech 25.06.10 в 09:07 |
||
|
Эти значения принадлежат к разным типам: 2 - целое число, а "Hello, World!" - строка. Вы или интерпретатор можете легко распознать строку, так как она заключена в кавычки. czech 25.06.10 в 09:08 |
||
|
Выражение print так же работает и с целыми числами: czech 25.06.10 в 09:09 |
||
|
>>> print 4 czech 25.06.10 в 09:09 |
||
|
Если вы не уверены, к какому типу принадлежит значение, интерпретатор подскажет. czech 25.06.10 в 09:10 |
||
|
>>> type("Hello, World!") czech 25.06.10 в 09:10 |
||
|
Не удивительно, что строка получила тип str, a целое число - тип int. Немного странным выглядит то, что дробное число получает тип float. На самом деле float - это сокращение от floating-point (плавающая точка). czech 25.06.10 в 09:13 |
||
|
>>> type(3.2) czech 25.06.10 в 09:16 |
||
|
А что насчет значений "17" и "3.2"? Они выглядят как числа, но заключены в кавычки как строки. czech 25.06.10 в 09:23 |
||
|
>>> type("17") czech 25.06.10 в 09:25 |
||
|
Это строки. czech 25.06.10 в 09:26 |
||
|
Строки в python могут быть заключены в одиночные или двойные кавычки. czech 25.06.10 в 09:26 |
||
|
>>> type('This is a string.') czech 25.06.10 в 09:27 |
||
|
Двойные кавычки могут содержать внутри текст с одинарными: "Она сказала: 'Да!' ", и наоборот, одинарные кавычки могут содержать текст с двойными: 'Она сказала: "Да!" '. czech 25.06.10 в 10:03 |
||
|
Когда вы вводите большое целое число, вы можете по привычке разделить разряды запятыми: 1,000,000. Python не поямет вас: czech 25.06.10 в 10:04 |
+1 | |
|
>>> print 1,000,000 czech 25.06.10 в 10:04 |
||
|
Собственно, это не то, что мы хотели увидеть! Python принял 1,000,000 за список из трех чисел. Так что запомните, никаких запятых в целых числах. czech 25.06.10 в 10:05 |
||
|
2.2 Переменные czech 25.06.10 в 10:06 |
||
|
Одним из важнейших качеств языка программирования является умение работать с переменными. czech 25.06.10 в 10:07 |
||
|
Присваивание создает новую переменную и назначает ей значение: czech 25.06.10 в 10:08 |
||
|
>>> message = "What's up, Doc?" czech 25.06.10 в 10:08 |
||
|
Этот пример иллюстрирует три присваивания. Первое присваивает строку "What's up, Doc?" переменной message. Второе назначает целое число 17 переменной n, и третье назначает дробное число 3.14159 переменной pi. czech 25.06.10 в 10:11 |
||
|
Оператор присваивания, =, здесь не является эквивалентным знаку равенства (хотя обычно он исползуется в этом качестве). Присваивание создает ссылку с именем слева от оператора на значение, расположенное справа справа от него. Вот почему вы получите ошибку, если напишите: czech 25.06.10 в 10:16 |
||
|
>>> 17 = n czech 25.06.10 в 10:16 |
||
|
По другому представить переменные можно, написав имя переменной и значение на бумаге и соединив их стрелкой, от переменной к значению. Такой вид называется диаграммой состояний, потому что показывает состояние какждой переменной. czech 25.06.10 в 10:19 |
||
|
Выражение print также работает с переменными: czech 25.06.10 в 10:19 |
||
|
>>> print message czech 25.06.10 в 10:20 |
||
|
В каждом случае результатом будет значение переменной. Переменные так же имеют свои типы; мы можем спросить у интерпретатора, что это за переменная. czech 25.06.10 в 10:21 |
||
|
>>> type(message) czech 25.06.10 в 10:24 |
||
|
Тип переменной - это тип значения, на которое она ссылается. czech 25.06.10 в 10:27 |
||
|
2.3 Имена переменных и ключевые слова czech 25.06.10 в 10:44 |
||
|
Программисты в основном выбирают иманя для своих переменных по значению, чтобы знать, для чего конкретная переменная нужно. czech 25.06.10 в 10:45 |
+1 | |
|
Имена переменных могут быть произвольной длины. Они могут включать как буквы, так числа, но с чисел начинаться не могут. Также можно использовать буквы в верхнем регистре, но не желательно. Если вы все же используете верхний регистр, помните, что синтаксически это имеет значение. Bruce и bruce - это две разные переменные. czech 25.06.10 в 10:49 |
||
|
Символ подчеркивания _ также может присутствовать в имени переменной. Он обычно используется в имени, состоящем из нескольких слов, например, my_name или price_of_tea_in_china. czech 25.06.10 в 10:50 |
||
|
Если вы назовете переменную не правильно, то получите ошибку: czech 25.06.10 в 10:51 |
||
|
>>> 76trombones = "big parade" czech 25.06.10 в 10:51 |
||
|
76trombones - неправильно, потому что имя не должно начинаться с чисел. more$ - неправильно, потому что содержит недопустимый символ $. Но что не так с переменной class? czech 25.06.10 в 10:52 |
||
|
Class - это одно из зарезервированный ключевых слов в python. Ключевые слова определены правилами языка и не могут использоваться в качестве имен переменных. czech 25.06.10 в 10:54 |
||
|
В python есть 31 ключевое слово: czech 25.06.10 в 10:54 |
||
|
and as assert break class continue czech 25.06.10 в 10:54 |
||
|
def del elif else except exec czech 25.06.10 в 10:54 |
||
|
finally for from global if import czech 25.06.10 в 10:55 |
||
|
in is lambda not or pass czech 25.06.10 в 10:55 |
||
|
print raise return try while with czech 25.06.10 в 10:55 |
||
|
yield czech 25.06.10 в 10:55 |
||
|
Можете сохранить этот список; если интерпретатор не примет одно из имен для ваших переменных, загляните в список. czech 25.06.10 в 10:56 |
||
|
2.4 Операции czech 25.06.10 в 10:57 |
||
|
Операции - это инструкции, которые интерпретатор python должен выполнить. Мы уже сталкивались с двумя операциями - print и присваивание. czech 25.06.10 в 10:59 |
