0% нашли этот документ полезным (0 голосов)
15 просмотров

Pythonlearn 02 Expressions

Загружено:

Nino Rcheulishvili
Авторское право
© © All Rights Reserved
Мы серьезно относимся к защите прав на контент. Если вы подозреваете, что это ваш контент, заявите об этом здесь.
Доступные форматы
Скачать в формате PPTX, PDF, TXT или читать онлайн в Scribd
0% нашли этот документ полезным (0 голосов)
15 просмотров

Pythonlearn 02 Expressions

Загружено:

Nino Rcheulishvili
Авторское право
© © All Rights Reserved
Мы серьезно относимся к защите прав на контент. Если вы подозреваете, что это ваш контент, заявите об этом здесь.
Доступные форматы
Скачать в формате PPTX, PDF, TXT или читать онлайн в Scribd
Вы находитесь на странице: 1/ 34

Переменные, Выражения и

Операторы
Глава 2

Пайтон для всех


www.py4e.com
Константы
• Неизменяемые значения, такие как: числа, буквы и строки
называются «константами», потому что их значение не
изменяется
• Числовые константы не оформляются кавычками
• Для констант типа «Строка» используются >>> print(123)
одинарные (') или двойные кавычки (") 123
>>> print(98.6)
98.6
>>> print('Привет, мир!')
Привет, мир!
Ключевые слова
Не стоит использовать ключевые слова в качестве имен
переменных или других идентификаторов
False class return is finally
None if for lambda continue
True def from whilenonlocal
and del global not with
as elif try or yield
assert else import pass
break except in raise
Переменные
• Переменная — это поименованная область памяти, в которой программист
может хранить данные и затем извлекать их, используя «имя» переменной

• Программисты могут назначать имена переменным

• Позже вы можете изменить значение переменной

x = 12.2 x 12.2
y = 14
y 14
Переменные
• Переменная — это поименованная область памяти, в которой программист
может хранить данные и затем извлекать их, используя «имя» переменной

• Программисты могут назначать имена переменным

• Позже вы можете изменить значение переменной

x = 12.2 x 12.2 100


y = 14
x = 100 y 14
Правила назначения имен переменных в Пайтон
• Имя должно начинаться с буквы или подчеркивания

• Должно состоять из букв, чисел и подчеркиваний

• Пайтон чувствителен к регистру

Хорошо: spam eggs spam23 _speed


Плохо: 23spam #sign var.12
Принадлежат трем разным переменным: spam Spam SPAM
Мнемонические имена переменных
• Поскольку мы как программисты можем выбирать и назначать имена
переменным, существуют рекомендации или «лучшие практики» для
именования переменных
• Лучше давать переменной имя, которое бы помогало нам помнить,
что мы собираемся хранить в ней («мнемонический» = «облегчающий
запоминание»)
• Это может сбивать с толку начинающих студентов, ведь хорошо
названные переменные частенько «звучат» настолько хорошо, что
могут показаться ключевыми словами
https://ru.wikipedia.org/wiki/Мнемоника
x1q3z9ocd = 35.0
x1q3z9afd = 12.50
x1q3p9afd = x1q3z9ocd * x1q3z9afd
print(x1q3p9afd)

Что делает этот


кусочек кода?
x1q3z9ocd = 35.0 a = 35.0
x1q3z9afd = 12.50 b = 12.50
x1q3p9afd = x1q3z9ocd * x1q3z9afd c=a*b
print(x1q3p9afd) print(c)

Что делают эти


блоки кода?
x1q3z9ocd = 35.0 a = 35.0
x1q3z9afd = 12.50 b = 12.50
x1q3p9afd = x1q3z9ocd * x1q3z9afd c=a*b
print(x1q3p9afd) print(c)

hours = 35.0
Что делают эти rate = 12.50
блоки кода? pay = hours * rate
print(pay)
Предложения или линии кода

x=2 Присвоение значения


x=x+2 Присвоение с выражением
print(x) Функция вывода

Переменная Оператор Константа Функция


Операция присвоения
• Мы присваиваем значение переменной, используя символ
присвоения (=)

• Операция присвоения состоит из выражения с правой стороны и


переменной слева для хранения результата

x = 3.9 * x * ( 1 - x )
Переменная — это место в
памяти, используемое для
x 0.6
хранения значения (0.6)

0.6 0.6
x = 3.9 * x * ( 1 - x )

0.4

Правая часть — это выражение.


0.936
Как только выражение вычислено,
результат помещается в (присваивается) x.
Переменная — это место в памяти,
используемое для хранения значения. x 0.6 0.936
Значение, хранимое в переменной,
может быть обновлено, старое
значение (0.6) может быть заменено
новым (0.936). 0.6 0.6
x = 3.9 * x * ( 1 - x )

0.4
Правая часть — это выражение. Как
только выражение вычислено, результат
помещается в (присваивается)
0.936
переменной в левой части (т.е., x).
Выражения…
Числовые выражения
• Из-за нехватки математических Оператор Действие
символов на клавиатуре компьютера, + Сложение
мы используем понятные компьютеру
- Вычитание
символы для передачи
математических операций * Умножение

• Звездочка — это умножение / Деление

** Степень
• Возведение в степень выглядит не
так, как в математике % Остаток
Числовые выражения
>>> xx = 2 >>> jj = 23
>>> xx = xx + 2 >>> kk = jj % 5 Оператор Действие
>>> print(xx) >>> print(kk)
+ Сложение
4 3
>>> yy = 440 * 12 >>> print(4 ** 3) - Вычитание
>>> print(yy) 64 * Умножение
5280
>>> zz = yy / 1000 4R3 / Деление

>>> print(zz) 5 23 ** Степень


5.28 20 % Остаток

3
Порядок вычислений
• Когда мы используем несколько операторов, Пайтон должен
знать, с какого начать

• Это называется «приоритет оператора»

• Какой оператор имеет больший приоритет над остальными?

x = 1 + 2 * 3 - 4 / 5 ** 6
Правила приоритета операторов
От наивысшего приоритета к низшему:

• Круглые скобки Скобки


Степень
• Возведение в степень Умножение
Сложение
• Умножение, Деление, Остаток
Левая часть
• Сложение и Вычитание к правой

• Левая часть по отношению к правой


1 + 2 ** 3 / 4 * 5
>>> x = 1 + 2 ** 3 / 4 * 5
>>> print(x)
11.0 1+8/4*5
>>>
1+2*5
Скобки
Степень
Умножение
1 + 10
Сложение
Левая часть
к правой 11
Приоритет операторов Скобки
Степень
• Запомните правила приоритета (сверху вниз) Умножение
Сложение
• При написании кода используйте скобки Левая часть к
правой
• При написании кода старайтесь сохранять математические
операции простыми, чтобы их было легко понять

• Разбивайте длинные серии математических операций, чтобы


сделать их более понятными
Что такое «Тип»?
• В Пайтон переменные, литералы и
константы имеют «тип» данных
>>> ddd = 1 + 4
• Пайтон различает целые числа и >>> print(ddd)
5
строки >>> eee = 'Привет ' + 'всем'
>>> print(eee)
• Например, символ “+” означает Привет всем
“сложение” в случае с числом, и
“объединение”, если имеет дело с
данными типа «строка»
конкатенировать = объединять
Тип имеет значение
• Пайтон автоматически
определяет «тип» всех >>> eee = 'Привет ' + 'всем'
>>> eee = eee + 1
объектов Traceback (most recent call last): File "<stdin>",
line 1, in <module>TypeError: Can't convert 'int'
• Некоторые операции object to str implicitly
запрещены >>> type(eee)
<class'str'>
• Вы не можете сложить >>> type('Привет')
<class'str'>
единицу (число) и строку >>> type(1)
<class'int'>
• В Пайтон мы можем узнать у >>>
тип любого элемента,
используя функцию type()
Несколько типов чисел
• Числа бывают двух основных типов: >>> xx = 1
>>> type (xx)
- Целые числа: <class 'int'>
-14, -2, 0, 1, 100, 401233 >>> temp = 98.6
>>> type(temp)
- Числа с плавающей точкой имеют <class'float'>
десятичную часть: -2.5 , 0.0, 98.6, 14.0 >>> type(1)
<class 'int'>
• Существуют и другие числовые типы, >>> type(1.0)
но они — вариации чисел с <class'float'>
плавающей точкой и целых чисел >>>
Преобразование типов
>>> print(float(99) + 100)
• Если вы помещаете в одно 199.0
выражение целое число и >>> i = 42
число с плавающей точкой, >>> type(i)
целое число преобразуется <class'int'>
в число с плавающей >>> f = float(i)
точкой >>> print(f)
42.0
• Вы можете контролировать >>> type(f)
<class'float'>
тип с помощью встроенных
>>>
функций: int() и float()
Деление целых чисел
>>> print(10 / 2)
5.0
>>> print(9 / 2)
Деление целых чисел дает 4.5
результат с плавающей точкой >>> print(99 / 100)
0.99
>>> print(10.0 / 2.0)
5.0
>>> print(99.0 / 100.0)
0.99
В отличие от Пайтон версии 2.x
Преобразование >>> sval = '123'
>>> type(sval)

строк
<class 'str'>
>>> print(sval + 1)
Traceback (most recent call last): File "<stdin>", line 1,
• Вы так же можете in <module>
TypeError: Can't convert 'int' object to str implicitly
использовать int() и float() для >>> ival = int(sval)
преобразования строк и >>> type(ival)
<class 'int'>
чисел >>> print(ival + 1)
124
• Если строка не содержит >>> nsv = 'hello bob'
>>> niv = int(nsv)
числовых символов, вы Traceback (most recent call last): File "<stdin>", line 1,
получите сообщение об in <module>
ошибке ValueError: invalid literal for int() with base 10: 'x'
Пользовательский ввод
• Мы можем дать указание
Пайтон приостановиться и nam = input('Кто ты? ')
прочесть данные от print('Привет', nam)
пользователя, используя
функцию input()
• Функция input()
Кто ты? Чак
возвращает строку
Привет Чак
Преобразование
пользовательского ввода
• Если мы запрашиваем у
пользователя число, нам inp = input('Этаж в Европе?')
затем необходимо usf = int(inp) + 1
преобразовать его из строки print('Этаж в США', usf)
в число, используя функцию
преобразования типа

• Позже мы разберем Этаж в Европе? 0


ситуации с некорректными Этаж в США 1
входными данными
Комментарии в Пайтон
• Все написанное после символа # игнорируется Пайтон

• Зачем нужно комментировать?

- Описать, что будет происходить в блоке кода

- Указать автора кода или другую вспомогательную


информацию

- Заблокировать строчку кода, возможно, временно


# Запрашивает имя файла и открывает его
name = input('Введите имя файла:')
handle = open(name, 'r')

# Подсчитывает частоту появления каждого слова


counts = dict()
for line in handle:
words = line.split()
for word in words:
counts[word] = counts.get(word,0) + 1

# Находит самое часто встречающееся слово


bigcount = None
bigword = None
for word,count in counts.items():
if bigcount is None or count > bigcount:
bigword = word
bigcount = count

# Выводит результат
print(bigword, bigcount)
Резюме
• Тип • Целочисленное деление

• Ключевые слова • Преобразование типов

• Переменные (мнемоника) • Ввод данных


пользователем
• Операторы
• Комментирование (#)
• Приоритет оператора
Задание

Напишите программу, предлагающую


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

Укажите количество часов: 35


Укажите ставку: 2.75

Оплата: 96.25
Авторы / Благодарности

Авторские права на эти слайды принадлежат Чарльзу Р.


Северансу (www.dr-chuck.com) , 2010 г., Школа Информации ...
Мичиганского Университета и доступны по лицензии Creative
Commons Attribution 4.0 License. Пожалуйста, сохраняйте этот
слайд во всех копиях этого документа, в соответствии с
требованиями Лицензии. Если вы внесли изменения,
добавьте свое имя или организацию в список участников на
этой странице.

Исходная разработка: Чарльз Северанс, Школа


Информации Мичиганского Университета.

Перевод выполнила Фомкина Виолетта.

… Добавьте сюда новых авторов и переводчиков

Вам также может понравиться