Что такое ключ сортировки
Перейти к содержимому

Что такое ключ сортировки

  • автор:

Что такое ключ сортировки

Ключ сортировки в табличных выходных формах — поле, по значению которого производится сортировка записей (их упорядочение в таблице).
Ключей сортировки может быть несколько, тогда они называются первичным, вторичным и т. д. Для сортировки необходимо указать поле, по которому будет проводиться сортировка, и вид сортировки (например, По возрастанию). В результате все сведения будут представлены в алфавитном порядке по фамилиям. Если тип поля — числовой, то записи рассредоточатся по возрастанию или убыванию значений этого поля. Сортировка текстовых данных производится по алфавиту, а числовых — по возрастанию.

Общее описание, Приложение 9. Генератор табличных форм:
В средней области интерфейса задаются ключи сортировки. Таблица для задания ключей активизируется индикатором «СОРТИРОВКА». Сортировка может быть задана с помощью меню «СПИСОК СОРТИРОВОК». [. ]
Ключи сортировки могут указываться и непосредственно с помощью соответствующей таблицы в средней области интерфейса. Количество ключей сортировки определяется с помощью числового индикатора «ЧИСЛО КЛЮЧЕЙ». Для описания каждого ключа сортировки служат три параметра: длина ключа, режим сортировки и формат выбора. Поддерживаются два режима сортировки: «единственный ключ» и «множественный ключ».

По мотивам Руководства по CDS/ISIS для Windows:
Ключом сортировки может быть имя автора. Для плодовитых авторов можно установить еще и подзаголовки. Эти подзаголовки будут служить вторым ключом сортировки. [. ] записи могут быть упорядочены по какому-либо другому элементу, например, по заглавию.
[. ]
Здесь ключом сортировки является имя автора. Для плодовитых авторов можно установить еще и подзаголовки. Эти подзаголовки будут служить вторым ключом сортировки. Например:

SHAKESPEARE, William
Plays
All’s well that ends well…

Poems
The phoenix and the turtle…

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

Редактировано 2 раз. Последний раз 26.12.2012 11:58 пользователем Lavrinovich.

Ключ сортировки

Ключ сортировки — ключ, записанный в одном или нескольких полях файла. Использование ключей сортировки позволяет проводить упорядочение записей файла.

См. также: Ключи

Финансовый словарь Финам .

Смотреть что такое «Ключ сортировки» в других словарях:

  • ключ сортировки — — [http://www.iks media.ru/glossary/index.html?glossid=2400324] Тематики электросвязь, основные понятия EN sortkey … Справочник технического переводчика
  • Ключ (иероглифика) — Для термина «Ключ» см. другие значения. Распределение 214 ключей по частотности в словаре «Кан си». Иероглифический ключ (部首 б … Википедия
  • КЛЮЧ К ТЕСТУ — упорядоченные наборы правильных (а иногда неправильных) ответов на вопросы либо наборы ответов с оценками к вопросам или вариантам ответов на них для определения степени выраженности той или иной характеристики личности. По форме К. к т. бывают… … Энциклопедический словарь по психологии и педагогике
  • Алгоритм сортировки — это алгоритм для упорядочения элементов в списке. В случае, когда элемент списка имеет несколько полей, поле, служащее критерием порядка, называется ключом сортировки. На практике в качестве ключа часто выступает число, а в остальных полях… … Википедия
  • Пролив Лаперуза — 宗谷海峡 (Karafuto) … Википедия
  • Остров Попова — Это статья об острове в Японском море, об одном из Алеутских островов см. статью Попов (остров). Попова Координаты: Координаты … Википедия
  • Остров Скребцова — Скребцова (Коврижка) Координаты:&# … Википедия
  • Архипелаг Римского-Корсакова — Архипелаг Римского Корсакова … Википедия
  • Остров Фуругельма — Фуругельма Координаты: Координаты … Википедия
  • Остров Рикорда — Рикорда … Википедия
  • Обратная связь: Техподдержка, Реклама на сайте
  • �� Путешествия

Экспорт словарей на сайты, сделанные на PHP,

WordPress, MODx.

  • Пометить текст и поделитьсяИскать в этом же словареИскать синонимы
  • Искать во всех словарях
  • Искать в переводах
  • Искать в ИнтернетеИскать в этой же категории

Поделиться ссылкой на выделенное

Прямая ссылка:

Нажмите правой клавишей мыши и выберите «Копировать ссылку»

Значение словосочетания «ключ сортировки»

Привет! Меня зовут Лампобот, я компьютерная программа, которая помогает делать Карту слов. Я отлично умею считать, но пока плохо понимаю, как устроен ваш мир. Помоги мне разобраться!

Спасибо! Я стал чуточку лучше понимать мир эмоций.

Вопрос: китаевед — это что-то нейтральное, положительное или отрицательное?

Нейтральное
Положительное
Отрицательное

Ассоциации к слову «ключ&raquo

Ассоциации к слову «сортировка&raquo

Синонимы к слову «ключ&raquo

Синонимы к слову «сортировка&raquo

Предложения со словосочетанием «ключ сортировки&raquo

  • Сортировка является устойчивой, т. е. относительный порядок элементов с одинаковыми ключами сортировки не изменяется.

Сочетаемость слова «ключ&raquo

  • гаечный ключ
    запасные ключи
    нужный ключ
  • ключ зажигания
    ключ доступа
    ключом двери
  • связка ключей
    в поисках ключей
    звук ключа
  • ключ подошёл
    ключ повернулся
    ключ нашёлся
  • открыть дверь своим ключом
    повернуть ключ
    достать ключи
  • (полная таблица сочетаемости)

Сочетаемость слова «сортировка&raquo

  • первичная сортировка
  • сортировка мусора
    сортировка писем
    сортировкой документов
  • процесс сортировки
  • заняться сортировкой
    приступил к сортировке
    приняться за сортировку
  • (полная таблица сочетаемости)

Афоризмы русских писателей со словом «ключ&raquo

  • Жизнь в безвременье мчится
    Пересохшим ключом:
    Все земное нам снится
    Утомительным сном.

Отправить комментарий

Дополнительно

  • Как правильно пишется слово «ключ»
  • Как правильно пишется слово «сортировка»
  • Разбор по составу слова «ключ» (морфемный разбор)
  • Разбор по составу слова «сортировка» (морфемный разбор)

Смотрите также

Значение слова «ключ&raquo

КЛЮЧ 1 , -а́, м. 1. Металлическое приспособление для запирания и отпирания замка. Ключ от квартиры.

КЛЮЧ 2 , -а́, м. Бьющий из земли источник, родник.

Значение слова «сортировка&raquo

СОРТИРО́ВКА , -и, род. мн.вок, дат.вкам, ж. 1. Действие по знач. глаг. сортировать. Сортировка зерна. Сортировка руды. Сортировка вагонов.

Предложения со словосочетанием «ключ сортировки&raquo
  • Сортировка является устойчивой, т. е. относительный порядок элементов с одинаковыми ключами сортировки не изменяется.
  • Таблица SPIDBF20.dbf содержит список ключей сортировок таблиц.
  • (все предложения)
Синонимы к слову «ключ&raquo
Синонимы к слову «сортировка&raquo
Ассоциации к слову «ключ&raquo
Ассоциации к слову «сортировка&raquo
Сочетаемость слова «ключ&raquo
  • гаечный ключ
  • ключ зажигания
  • связка ключей
  • ключ подошёл
  • открыть дверь своим ключом
  • (полная таблица сочетаемости. )
Сочетаемость слова «сортировка&raquo
  • первичная сортировка
  • сортировка мусора
  • процесс сортировки
  • заняться сортировкой
  • (полная таблица сочетаемости. )
Морфология
  • Разбор по составу слова «ключ»
  • Разбор по составу слова «сортировка»
Правописание
  • Как правильно пишется слово «ключ»
  • Как правильно пишется слово «сортировка»

Карта слов и выражений русского языка

Онлайн-тезаурус с возможностью поиска ассоциаций, синонимов, контекстных связей и примеров предложений к словам и выражениям русского языка.

Справочная информация по склонению имён существительных и прилагательных, спряжению глаголов, а также морфемному строению слов.

Сайт оснащён мощной системой поиска с поддержкой русской морфологии.

Ключ сортировки key

Методы sort , sorted могут принимать именованный аргумент key . Он должен быть функцией (или чем-то другим вызываемым – callable) с одним аргументом. Смысл key в том, что он вызывается ровно один раз для каждого из элементов списка (итератора и т.п.), которой мы сортируем, и указывает порядок сортировки: элементы выстраиваются ровно в том порядке, в каком бы выстроился сортированный список результатом вызова key на всех элементах:

  1. Применить key ко всем элементам
  2. Отсортировать результаты key по порядку, используя обычное сравнение «больше-меньше» для (чисел, строк и т.п.)
  3. Выстроить исходные данные согласно этому порядку.

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

>>> sorted(['Wolf', 'Sparrow', 'Cat'], key=len) ['Cat', 'Wolf', 'Sparrow'] >>> len('Cat') 3 >>> len('Wolf') 4 >>> len('Sparrow') 7

Или другой пример. У нас есть список координат точек [(x, y), . ] . Хотим расположить их по расстоянию от начала координат (0, 0) :

pts = [(10, 20), (-100, 150), (0, 0), (40, -30)] print(sorted(pts, key=lambda p: p[0] ** 2 + p[1] ** 2)) # [(-100, 150), (40, -30), (10, 20), (0, 0)]

Но, что если у нас, скажем, список кортежей? По умолчанию (стандартно) кортежи сравниваются сначала по первому элементу, а потом, если первые равны – по второму, и так далее. Если нужно игнорировать первый элемент и сразу сравнивать по второму – это уже и есть нестандартный признак.

drinks = [ # напиток, цена ('Juice', 100), ('Beer', 200), ('Soda', 50), ('Cocktail', 400), ('Water', 20) ] print(sorted(drinks, key=lambda drink: drink[1])) # [('Water', 20), ('Soda', 50), ('Juice', 100), ('Beer', 200), ('Cocktail', 400)] # без key: print(sorted(drinks)) # отсортирует по названию напитка # [('Beer', 200), ('Cocktail', 400), ('Juice', 100), ('Soda', 50), ('Water', 20)]

Бонус: если хотите поменять порядок сортировки на обратный, можно либо в лямбде поставить минус перед возвращаемым значениям, но лучше в sorted передать reverse=True .

print(sorted(drinks, key=lambda drink: -drink[1])) # или лучше print(sorted(drinks, key=lambda drink: drink[1], reverse=True)) # [('Cocktail', 400), ('Beer', 200), ('Juice', 100), ('Soda', 50), ('Water', 20)]

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

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

print(sorted(drinks, key=lambda dr: (len(dr[0]), -dr[1]))) # [('Beer', 200), ('Soda', 50), ('Juice', 100), ('Water', 20), ('Cocktail', 400)]

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

>>> list(map(lambda dr: (len(dr[0]), -dr[1]), drinks)) [(5, -100), (4, -200), (4, -50), (8, -400), (5, -20)]

Видите, первым теперь идет длина строки, а потом цена с минусом. Поэтому первыми после сортировки пойдут элементы с четверкой в ключе, а среди двух (4, -200), (4, -50) порядок сохранится, потому что -200 < -50 .

Модуль operator

Вместо лямбды можно взять одну из библиотечных функций из модуля operator. Есть несколько вариантов для разных ситуаций.

Функция itemgetter(i) берет i-тый элемент кортежа или списка (или ищет по ключу i в dict):

from operator import itemgetter print(sorted(drinks, key=itemgetter(1))) # [('Water', 20), ('Soda', 50), ('Juice', 100), ('Beer', 200), ('Cocktail', 400)]
# преобразуем список кортежей в список словарей drinks_dict = [ for name, price in drinks] print(drinks) # вывод: [, , , , ] print(sorted(drinks, key=itemgetter('pr'))) # вывод: [, , , , ]

Теперь представим, что у нас есть класс Drink , и нужно сортировать по атрибуту price . Это можно сделать лямбдой или функцией attrgetter , которая получает атрибут объекта по имени этого атрибута:

class Drink: def __init__(self, name, price): self.name = name self.price = price def __repr__(self): return f'Drink("", )' drinks_cls = [ # напиток, цена Drink('Juice', 100), Drink('Beer', 200), Drink('Soda', 50), Drink('Cocktail', 400), Drink('Water', 20) ] print(sorted(drinks_cls, key=lambda drink: drink.price)) # или from operator import attrgetter print(sorted(drinks_cls, key=attrgetter('price')))

Еще есть methodcaller , она вызывает метод по имени и использует результат его, как ключ для сортировки.

from operator import methodcaller sorted(items, key=methodcaller('get_reserve', category='home')) # тоже самое что: sorted(items, key=lambda item: item.get_reserve(category='home'))

Исследование производительности

Вариант с лямбдой немного медленнее (потому что операторы написаны на Си, а лямбду – мы пишем на Python). Проведем тесты производительности:

from random import shuffle from timeit import timeit from operator import itemgetter data = [ for x in range(1000)] shuffle(data) def sort_itemgetter(data): data.sort(key=itemgetter('ident')) def sort_lambda(data): data.sort(key=lambda it: it['ident']) print('sort_itemgetter:', timeit('sort_itemgetter(list(data))', globals=globals(), number=10000)) print('sort_lambda:', timeit('sort_lambda(list(data))', globals=globals(), number=10000)) # sort_itemgetter: 1.6157471220000001 # sort_lambda: 1.8793544059999998
ig = itemgetter('ident') la = lambda it: it['ident'] di = print('itemgetter:', timeit('ig(di)', globals=globals(), number=1000000)) print('lambda:', timeit('la(di)', globals=globals(), number=1000000)) # itemgetter: 0.083 # lambda: 0.11

itemgetter быстрее, чем lambda, ибо он написан на Си.

Смотрите, как вам удобнее. Лично мне нравится все-таки вариант с лямбдами, потому что в нем меньше возможности ошибиться, так как нет строк, зато работает авто-дополнение от среды разработки.

min и max

Методы min и max также поддерживают key . Они вернут соответственно элемент, у которого key вернет наименьшее или наибольшее значение. На примере длины строк:

names = ['Wolf', 'Sparrow', 'Cat'] min(names, key=len) # 'Cat' max(names, key=len) # 'Sparrow'

Самая ближняя от начала координат точка и самая дальняя:

pts = [(10, 20), (-100, 150), (0, 0), (40, -30)] min(pts, key=lambda p: p[0] ** 2 + p[1] ** 2) # (0, 0) max(pts, key=lambda p: p[0] ** 2 + p[1] ** 2) # (-100, 150)

Специально для канала @pyway. Подписывайтесь на мой канал в Телеграм @pyway ��

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *