Изучаем Python -> Типы данных

Привет-привет, DTF! В этом лонге, я продолжаю цикл статей, которые помогут Вам в изучении Python. Всё с примерами и наглядно. Читай, узнавай, подписывайся! А любители видео-формата, могут посмотреть мое видео по этой статье на YouTube-канале.

План статей:

  • print() /input()
  • Типы данных
  • Переменные
  • Условия
  • Массив
  • Циклы
  • Импорт библиотек
  • Функции
  • Классы
  • Закрепляем материал

Обязательно пробуй повторить изложенный в этой статье материал, отмечай плюсиком, каждый успешно пройденный этап, чтобы отслеживать свой прогресс.

Весь код я предлагаю писать в Google Colab, для этого нам понадобиться там зарегистрироваться (подойдет учетка Google) и создать новый блокнот (Файл -> Создать блокнот) .

Также, если у Вас возникли трудности, можете просмотреть мой блокнот, в нём изложен весь сегодняшний материал.

Типы данных

Любую информацию можно разделить на категории. Каждая из категорий обладает своими правилами и порядками. Например, слова нужны нам для общения, мы можем их складывать и получать предложения. Или цифры, нужны нам для произведения каких-либо расчетов, подвластны законам арифметики. Я выделил несколько основных типов, которые понадобятся нам на текущий момент. Существуют и другие, но их пока опустим. Основные типы данных:

str - строка (любой символ, записанный в кавычках) .

Пример:

«123', 'A', '%%$#!','World', "World»

int — целое/натуральное число (не имеющее никакого остатка, даже нулевого)

Пример:

-3 -2 -1 0 1 2 3

float — дробное число или число с плавающей точкой (напротив, имеющее какой-либо остаток, пусть даже и нулевой)

Пример:

6.5, 3.7, 10.0

И тут может возникнуть много вопросов, а точно ли 10.0 это дробное число, а не целое? Есть ли разница между одинарной кавычкой или двойной?
Чтобы ответить на все эти вопросы, нам понадобиться познакомиться с командой type() .
Положив внутри скобок значение, тип которого мы хотим узнать, мы получим ответ на свой вопрос.
Давайте подробнее разберем каждый из этих типов. Для начала проверим, есть разница между кавычками?

type('Hellow World')
Изучаем Python -> Типы данных
Изучаем Python -> Типы данных

На самом деле нет — и то, и другое — строка. В Python разные кавычки позволяют нам использовать их внутри строки.
Например, хотим вывести двойные, пишем вот так:

print('Я посмотрел потрясающий фильм, он называется "Гарри Поттер"')
Изучаем Python -> Типы данных

Или наоборот, если хотим использовать одинарные:

print("Не может быть! Я тоже фанат фильма 'Гарри Поттер' ")
Изучаем Python -> Типы данных

Теперь проверим разницу между целым числом и дробным. Делаем type() между, казалось бы, практически одинаковыми цифрами, но получаем разные типы данных.

type(10)
Запись без остатка - целое число.
Запись без остатка - целое число.
type(10.0)
С остатком - дробное.
С остатком - дробное.

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

print(2+2.0) print(type(2+2.0))
Получается дробь
Получается дробь

Но это тип сгенерировался автоматически т. к. класс дробных чисел больше (он включает в себя все целые) . А можно ли сделать тот тип данных, который я хочу? Можно.

Указываем желаемый тип данных и в скобочках записываем значение, которое хотим перевести в него.

print(int(2+2.0)) print(type(int(2+2.0)))
И вуаля! Дробь стала целым числом.
И вуаля! Дробь стала целым числом.

А что будет, если попросить Python перевести не такой удобный пример? Ну, например, дробь с остатком?

print(int(2+2.6)) print(type(int(2+2.6)))
Изучаем Python -> Типы данных

Мы видим, что при переводе, число округлилось в меньшую степень. При этом не важно, было ли там в остатке одна десятая или девять десятых, округление, если мы не сделаем никаких оговорок, будет в меньшую степень.

Разберём также работу со строками.
Числа и строки складывать нельзя! Это два разных лагеря, которые не находят друг с другом общего языка, как не пытайтесь.

Написав, такой код, Python выведет ошибку:

print('Hello'+ 5)
Изучаем Python -> Типы данных

А также скажет, что Вы пытаетесь сложить строчку с числом (или дробью) и так делать не стоит.

Попробуем сделать аналогичную запись, но с двумя строками.

print('Hello'+'World')
Изучаем Python -> Типы данных

И строки он сложил нам без проблем. Только слишком... Тесно. Всё потому что пробел — это отдельный символ, который нужно учитывать.

Попытка номер два:

print('Hello '+'World')
Изучаем Python -> Типы данных

И еще немного интересностей. Хоть складывать мы не можем строку с числом, зато умножать (правда, только на целое число) очень даже. Давайте, попробуем это проделать и увидим результат:

print('этот текст повторяется 5 раз '* 5)
Изучаем Python -> Типы данных

Умножение позволяет повторять нам одну и ту же строку столько раз, сколько мы захотим. На этом изучение типов данных, на сегодня, можно окончить. Это очень обширная тема для изучения и её полное раскрытие будет избыточным на текущем периоде обучения. В последующих статьях, мы еще не раз вернёмся к этой теме, чтобы дополнить её.

Если Вам что-то непонятно — можете писать вопросы в комментарии, я отвечу на каждый. Буду признателен подписке (особенно на YouTube канал), до встречи в новых постах!

55
Начать дискуссию