Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / Python / Учебник Python 3.1 / Структуры данных /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Множества - Программирование от RIN.RU
Множества

Python имеет также тип данных множество. Множество - это неупорядоченная коллекция без дублирующихся элементов. Основные способы использования - проверка на вхождение и устранение дублирующихся элементов. Объекты этого типа поддерживают обычные математические операции над множествами, такие как объединение, пересечение, разность и симметрическая разность.


Для создания множеств могут быть использованы фигурные скобки или функция set(). Заметьте: Для создания пустого множества нужно использовать set(), а не {}: в последнем случае создаётся пустой словарь (dictionary) - тип данных, который мы обсудим в следующем разделе.


Продемонстрируем работу со множествами на небольшом примере:

>>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
>>> print(basket)
{'orange', 'banana', 'pear', 'apple'}
>>> fruit_list = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']
>>> fruit = set(fruit_list) # создать множество на основе данных из списка (заметьте исчезновение дубликатов -перев.)
>>> fruit
{'orange', 'pear', 'apple', 'banana'}
>>> fruit = {'orange', 'apple'} # синтаксис {} эквивалентен [] у списков
>>> fruit
{'orange', 'apple'}
>>> 'orange' in fruit # быстрая проверка на вхождение
True
>>> 'crabgrass' in fruit
False
>>> # Демонстрация операций со множествами на примере букв из двух слов
...
>>> a = set('abracadabra')
>>> b = set('alacazam')
>>> a # уникальные буквы в a
{'a', 'r', 'b', 'c', 'd'}
>>> a - b # буквы в a но не в b
{'r', 'd', 'b'}
>>> a | b # все буквы, которые встречаются в a или в b
{'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}
>>> a & b # буквы, которые есть и в a и в b
{'a', 'c'}
>>> a ^ b # буквы в a или в b, но не в обоих
{'r', 'd', 'b', 'm', 'z', 'l'}


Как и у списков, у множеств существует синтаксис сборок:

>>> a = {x for x in 'abracadabra' if x not in 'abc'}
>>> a
{'r', 'd'}





Назад
Вперед




 8  Комментарии к статье  8 8  Обсудить в чате

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь