Чтобы успешно установить python-ldap с помощью pip, необходимы библиотеки разработки (имена пакетов, взятые из среды ubuntu):
sudo apt-get install -y python-dev libldap2-dev libsasl2-dev libssl-dev
Поскольку ваши значения списка «первого уровня» фактически являются списками, вам необходимо сначала извлечь их, а затем запустить order
для результатов. Для второй версии вам просто нужно заменить «p.val» как индекс извлечения
dput(example[ order( sapply(example, "[[", 'p.val')) ] )
list(list(vals = list(1, 2, 3), param = list(4, 5, 6), p.val = 0.2),
list(vals = list(1, 2, 3), param = list(4, 5, 6), p.val = 0.5),
list(vals = list(1, 2, 3), param = list(4, 5, 6), p.val = 0.9),
list(vals = list(1, 2, 3), param = list(4, 5, 6), p.val = 1.2))
. Это не изменит значение примера, поэтому, чтобы оно «прилипало», вам нужно было бы назначить результат к имени, возможно, с тем же именем, example
.