У Python много разных типов данных. Я упомяну первые два «типа данных сбора» в качестве первой части этого поста, который на следующей неделе будет продолжен второй частью; набор и кортеж.

  • Установить
  • Кортеж
  • Список
  • Словарь

Я постараюсь объяснить это на простом примере, чтобы было легче понять. При этом я буду использовать Jupyter Notebook. Блокнот Jupyter - это мощный интерактивный веб-инструмент, известный также как бесплатный и открытый исходный код для программирования.

Давай начнем. Вот сценарий :)

Я должен пойти на рынок за покупками. Из-за этого я хочу создать список покупок, чтобы запомнить, что мне нужно, используя 4 разных типа данных коллекции python. Я хочу купить следующее.

  • Яблоко - ›3 штуки
  • Молоко - ›1 бутылка.
  • Сыр - ›250 грамм
  • Апельсин - ›5 шт.

1. Установить

Я определил набор под названием «shoppingSet» с помощью фигурных скобок. Я написал «яблоко» трижды. Но будьте осторожны, на выходе он появляется только один раз. Потому что set содержит уникальные данные и не допускает дублирования. Я заметил, что с помощью метода «len ()» в моем shoppingSet .

Наборы бывают неиндексированными и неупорядоченными. Поэтому я не мог использовать индексирование или нарезку для доступа к элементам набора. Это вызвало TypeError. Наборы неизменяемы. Я не могу поменять их предметы. Но я могу добавить новый элемент с помощью метода «add ()».

Если бы я хотел добавить такой элемент, как «молоко», который уже существует в наборе, я бы не смог добавить. Напомним еще раз, что набор содержит уникальный элемент.

Я также мог добавить новый элемент с помощью метода «update ()».

Когда я хочу удалить элемент из набора, я могу использовать метод «remove ()». Но если я хочу удалить элемент, который еще не существует, он вызывает KeyError.

Я также мог бы использовать метод «discard ()», чтобы удалить элемент из набора. Ошибка не возникает, если элемент, который я хотел бы удалить, еще не существует.

Я мог бы использовать метод «pop ()», чтобы удалить последний элемент набора, но я не предпочитаю. Помните, что наборы неупорядочены. Таким образом, мы не можем знать, какой элемент удален из набора, при каждом запуске набора. Потому что порядок элементов в наборе может меняться при каждом запуске.

Этот набор для покупок был не совсем таким, как я хотел. Поскольку я не мог присвоить значение установленным элементам, таким как «3 штуки» или «1 бутылка» и т. Д., Я хотел бы удалить его.

Если я использую метод «clear ()» для удаления набора, я не могу удалить набор, но я очищаю его и получаю пустой набор.

Я мог бы использовать ключевое слово «del» для удаления набора. Если я хочу получить доступ к shoppingSet после его удаления, я не смогу.

2. Кортеж

Кортеж - это еще один тип данных коллекции. Я определил кортеж под названием shoppingTuple с помощью скобок. Я мог бы написать «яблоко» трижды. Потому что кортеж допускает повторяющиеся члены. Сейчас у меня 6 участников shoppingTuple.

Если я хочу получить доступ к нужным мне элементам кортежа, я могу использовать индексацию или нарезку, как вы можете видеть выше. Кортежи индексируются и упорядочиваются. Но они также неизменны.

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

Используя метод count (), я мог узнать, сколько раз появляется указанное значение. Вы можете получить доступ к важным методам, таким как count () и т. Д., О которых я упоминал в моем предыдущем посте Наиболее распространенные строковые методы в Python, из здесь.

Я мог получить доступ к позиции указанного элемента, где он был найден в кортеже, с помощью «index ()».

Я до сих пор не смог составить список, как хотел. Потому что я не мог присвоить значение каждому элементу кортежа. Я мог бы трижды написать «яблоко», но как я мог бы написать «250 грамм сыра» :) Поэтому я удалил кортеж с помощью ключевого слова «del».

В следующем посте я упомяну последние два из четырех типов коллекций в python; список и dict. Таким образом, мы сможем решить, какой тип коллекции наиболее полезен для наших нужд.

Продолжение следует .. :) Увидимся во второй части ..

использованная литература