Переменные в Python и функция len()

Обновлено:

1. Что такое переменная

Переменная в Python — это не контейнер.

Переменная — это ссылка на объект.

Пример:

a = 10

В этой записи:

a = 10

a — переменная, то есть ссылка на объект.

= — оператор присваивания.

10 — объект, который мы присваиваем в переменную a.


2. Создание переменной

Переменную можно создать так:

a = 10

Теперь переменная a ссылается на объект 10.

Можно создать переменную со значением типа int:

age = 25

Можно создать переменную со значением типа float:

price = 99.5

Можно создать переменную со значением типа str:

name = 'Oleg'

3. Перезапись переменной

Переменную можно перезаписать.

a = 10
a = 20

Сначала переменная a ссылалась на объект 10.

Потом переменная a стала ссылаться на объект 20.


4. Перезапись переменной другим типом данных

В Python переменную можно перезаписать объектом другого типа.

a = 10
a = 'Hello'

Сначала в переменной a было число 10.

Потом в переменной a стала строка 'Hello'.

Так можно делать, потому что в Python динамическая типизация.

Динамическая типизация означает, что переменная может ссылаться на объекты разных типов в разное время.

В языках со статической типизацией обычно так делать нельзя.


5. Операции с переменными

Если в переменных лежат числа, с ними можно выполнять математические операции.

a = 10
b = 5

a + b

Результат:

15

Вычитание:

a = 10
b = 5

a - b

Результат:

5

Умножение:

a = 10
b = 5

a * b

Результат:

50

Деление:

a = 10
b = 5

a / b

Результат:

2.0

6. Создание новой переменной на основе других переменных

Можно создать новую переменную на основе уже существующих переменных.

a = 10
b = 5
c = a + b

Теперь в переменной c находится результат сложения a и b.

c

Результат:

15

Ещё пример:

price = 100
count = 3
total = price * count
total

Результат:

300

7. Перезапись переменной через её старое значение

Можно использовать значение переменной и сразу записать в неё новое значение.

a = 10
b = 5

a = a + b

Сначала Python берёт старое значение переменной a.

a

Старое значение:

10

Потом складывает его со значением переменной b.

10 + 5

Результат:

15

Потом результат записывается обратно в переменную a.

Теперь:

a

Результат:

15

8. Сокращённая запись

Запись:

a = a + b

можно записать короче:

a += b

Эти две записи работают одинаково.

Полная запись:

a = 10
b = 5

a = a + b

Сокращённая запись:

a = 10
b = 5

a += b

В обоих случаях в переменной a будет:

15

9. Сокращённая запись с разными операторами

Сложение:

a = 10
b = 5

a += b

Результат:

15

Вычитание:

a = 10
b = 5

a -= b

Результат:

5

Умножение:

a = 10
b = 5

a *= b

Результат:

50

Деление:

a = 10
b = 5

a /= b

Результат:

2.0

Важно: при обычном делении результат будет float.


10. Переменные со строками

В переменную можно записать строку.

s = 'Hello'

Со строками можно использовать сложение.

a = 'Hello'
b = 'World'

c = a + b
c

Результат:

'HelloWorld'

Если нужен пробел, его нужно добавить отдельно:

a = 'Hello'
b = 'World'

c = a + ' ' + b
c

Результат:

'Hello World'

Строку можно умножать на целое число.

s = 'Hi'

s * 3

Результат:

'HiHiHi'

11. Функция len()

Функция len() показывает длину строки.

В функцию len() можно передать один аргумент.

Пример со строкой:

len('Hello')

Результат:

5

В строке 'Hello' 5 символов.


12. len() и переменная

В функцию len() можно передать не саму строку, а переменную со строкой.

s = 'Hello'

len(s)

Результат:

5

13. len() и пустая строка

Пустая строка — это строка, в которой нет символов.

len('')

Результат:

0

14. len() и пробел

Пробел — это тоже символ.

len(' ')

Результат:

1

Строка из нескольких пробелов:

len('   ')

Результат:

3

15. Ещё примеры с len()

len('Python')

Результат:

6
len('Привет')

Результат:

6
len('12345')

Результат:

5
len('Hello world')

Результат:

11
len('Python 🐍')

Результат:

8

16. Что нельзя передавать в len()

В функцию len() нельзя передавать целое число.

len(100)

Будет ошибка.

В функцию len() нельзя передавать вещественное число.

len(3.14)

Будет ошибка.

На этом этапе мы используем len() только со строками.


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

Задание 1

Создать переменные:

  1. переменную с целым числом;
  2. переменную с вещественным числом;
  3. переменную со строкой.

Пример:

age = 25
price = 99.5
name = 'Oleg'

Задание 2

Разобрать запись на части:

a = 100

Нужно написать:

  1. что находится слева;
  2. что находится посередине;
  3. что находится справа.

Задание 3

Создать переменную и перезаписать её другим числом.

Пример:

a = 10
a = 20

Написать 5 своих примеров.


Задание 4

Создать переменную и перезаписать её объектом другого типа.

Пример:

a = 10
a = 'Hello'

Написать 5 своих примеров.


Задание 5

Решить примеры с переменными.

a = 10
b = 5

a + b
a = 20
b = 7

a - b
a = 6
b = 4

a * b
a = 15
b = 3

a / b
a = 10
b = 5

(a + b) * 2

Задание 6

Определить, что будет в переменной c.

a = 10
b = 5
c = a + b
a = 20
b = 3
c = a * b
a = 100
b = 25
c = a - b
a = 30
b = 10
c = a / b
a = 10
b = 5
c = (a + b) * 2

Задание 7

Определить, что будет в переменной a.

a = 10
b = 5

a = a + b
a = 20
b = 7

a = a - b
a = 6
b = 4

a = a * b
a = 15
b = 3

a = a / b

Задание 8

Записать сокращённую запись.

Пример:

a = a + b

Сокращённая запись:

a += b

Нужно сократить:

a = a + b
a = a - b
a = a * b
a = a / b

Задание 9

Расписать сокращённую запись полной записью.

Пример:

a += b

Полная запись:

a = a + b

Нужно расписать:

a += b
a -= b
a *= b
a /= b

Задание 10

Определить, что будет в переменной a.

a = 10
b = 5

a += b
a = 10
b = 5

a -= b
a = 10
b = 5

a *= b
a = 10
b = 5

a /= b

Задание 11

Решить примеры со строковыми переменными.

a = 'Hello'
b = 'World'

a + b
a = 'Hello'
b = 'World'

a + ' ' + b
s = 'Hi'

s * 3
s = 'Python'

s * 2

Задание 12

Определить результат работы len().

len('Hello')
len('Python')
len('Привет')
len('12345')
len('')
len(' ')
len('   ')
len('Hello world')

Задание 13

Создать переменную со строкой и передать её в len().

Пример:

s = 'Hello'

len(s)

Нужно написать 5 своих примеров.


Задание 14

Найти выражения, которые приведут к ошибке.

len('Hello')
len(100)
len('100')
len(3.14)
len('')
len(' ')
len('Python')

Задание 15

Написать свои примеры:

  1. переменная с числом int;
  2. переменная с числом float;
  3. переменная со строкой str;
  4. перезапись переменной другим числом;
  5. перезапись переменной другим типом;
  6. создание новой переменной через сложение двух переменных;
  7. изменение переменной через a = a + b;
  8. изменение переменной через a += b;
  9. пример с len() и строкой;
  10. пример с len() и переменной.