Простой Python. современный стиль программирования - читать онлайн бесплатно полную версию книги . Страница 69

>>> a.issuperset(a)

True

И наконец, вы можете найти собственное множество множеств (первое множе-

ство содержит все члены второго и несколько других) с помощью оператора >:

>>> a > b

False

>>> wruss > bruss

True

Множество не может быть собственным множеством множеств самого себя:

>>> a > a

False

Создание крупных структур данных

97

Сравнение структур данных

Напомню, список создается с помощью квадратных скобок ([]), кортеж — с по-

мощью запятых, а словарь — с помощью фигурных скобок ({}). Во всех случаях вы

получаете доступ к отдельному элементу с помощью квадратных скобок:

>>> marx_list = ['Groucho', 'Chico', 'Harpo']

>>> marx_tuple = 'Groucho', 'Chico', 'Harpo'

>>> marx_dict = {'Groucho': 'banjo', 'Chico': 'piano', 'Harpo': 'harp'}

>>> marx_list[2]

'Harpo'

>>> marx_tuple[2]

'Harpo'

>>> marx_dict['Harpo']

'harp'

Для списка и кортежа значение, находящееся в квадратных скобках, является

целочисленным смещением. Для словаря же оно является ключом. Для всех троих

результатом будет значение.

Создание крупных

структур данных

Ранее мы работали с простыми булевыми значениями, числами и строками. Теперь же

мы работаем со списками, кортежами, множествами и словарями. Вы можете объеди-

нить эти встроенные структуры данных в собственные структуры, более крупные

и сложные. Начнем с трех разных списков:

>>> marxes = ['Groucho', 'Chico', 'Harpo']

>>> pythons = ['Chapman', 'Cleese', 'Gilliam', 'Jones', 'Palin']

>>> stooges = ['Moe', 'Curly', 'Larry']

Мы можем создать кортеж, который содержит в качестве элементов каждый из

этих списков:

>>> tuple_of_lists = marxes, pythons, stooges

>>> tuple_of_lists

(['Groucho', 'Chico', 'Harpo'],

['Chapman', 'Cleese', 'Gilliam', 'Jones', 'Palin'],

['Moe', 'Curly', 'Larry'])

Можем также создать список, который содержит три списка:

>>> list_of_lists = [marxes, pythons, stooges]

>>> list_of_lists

[['Groucho', 'Chico', 'Harpo'],

['Chapman', 'Cleese', 'Gilliam', 'Jones', 'Palin'],