Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,331

Сортировка 1.2 больше 1.10

13.08.2024, 08:19. Показов 1478. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
здравствуйте, код:
Python
1
2
3
res = ['1.1', '1.10', '1.2']
sorted_res = sorted(res, ?????)
print(sorted_res)
как получить:
Python
1
res = ['1.1', '1.2', '1.10']
спасибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.08.2024, 08:19
Ответы с готовыми решениями:

Сортировка выбором, Сортировка простыми вставками, Сортировка пузырьком, Сортировка слиянием, Быстрая сортировка Хоара
Имеется список товаров, хранящихся на базе. Каждая строка этого списка содержит: инвентарный номер товара; количество видов этого товара;...

Сортировка в массиве более если в ячейке больше 1 элемента
Здравствуйте друзья! Условие задачи: Есть папка, в которой находятся файлы txt, в которых находятся цифровые значения от 1 до...

Сортировка в массиве: сначала числа меньше q, а потом больше или равные числу q
дан одномерный массив и число q отсортировать массив так чтобы сначала шли числа меньше q а потом больше или равные числу q

25
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,331
18.08.2024, 15:16  [ТС]
Студворк — интернет-сервис помощи студентам
iSmokeJC, хоть в баню хоть в лазню, просто я не заметил, Semen-Semenich увидел и подсказал, что Ваше решение не есть гут и я подтверждаю
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
18.08.2024, 15:23
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
Ваше решение не есть гут и я подтверждаю
Ты написал, что из
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
['1.1', '1.10', '1.2']
нужно получить
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
res = ['1.1', '1.2', '1.10']
Мой код делает именно это. Что не гут?
0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,331
18.08.2024, 15:30  [ТС]
ошибся я)), сорри
сабж важней - Сортировка 1.2 больше 1.10
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
18.08.2024, 15:45
Лучший ответ Сообщение было отмечено Ципихович Эндрю как решение

Решение

Python
1
print(sorted(lst, key=lambda x: tuple(re.findall(r'\d+(?:\.\d+)*', x))))
0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,331
18.08.2024, 15:57  [ТС]
iSmokeJC, шоколоадно
Python
1
2
3
4
5
6
7
8
9
10
11
import re
lst = ['3.1.1 = Жезл', '1.1 = Железный', '1.10 = Железо', '1.2 = Однопутная']
print(sorted(lst, key=lambda x: tuple(re.findall(r'\d+(?:\.\d+)*', x))))
lst = ['3.1.1=Жезл', '1.1=Железный', '1.10=Железо', '1.2=Однопутная']
print(sorted(lst, key=lambda x: tuple(re.findall(r'\d+(?:\.\d+)*', x))))
lst = ['3.1.1 Жезл', '1.1 Железный', '1.10 Железо', '1.2 Однопутная']
print(sorted(lst, key=lambda x: tuple(re.findall(r'\d+(?:\.\d+)*', x))))
lst = ['3.1.1', '1.1', '1.10', '1.2']
print(sorted(lst, key=lambda x: tuple(re.findall(r'\d+(?:\.\d+)*', x))))
lst = ['3.1.1 ', '1.1 ', '1.10 ', '1.2 ']
print(sorted(lst, key=lambda x: tuple(re.findall(r'\d+(?:\.\d+)*', x))))
['1.1 = Железный', '1.10 = Железо', '1.2 = Однопутная', '3.1.1 = Жезл']
['1.1=Железный', '1.10=Железо', '1.2=Однопутная', '3.1.1=Жезл']
['1.1 Железный', '1.10 Железо', '1.2 Однопутная', '3.1.1 Жезл']
['1.1', '1.10', '1.2', '3.1.1']
['1.1 ', '1.10 ', '1.2 ', '3.1.1 ']
0
115 / 100 / 15
Регистрация: 24.07.2019
Сообщений: 320
18.08.2024, 16:20
Странная конечно нумерация, понятно было бы ещё, если
1.1.
1.1.1.
...
1.1.10
1.2.
1.3.
...
1.10

но если как в Правилах, то
- (на скрине)
Миниатюры
Сортировка 1.2 больше 1.10  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.08.2024, 16:20
Помогаю со студенческими работами здесь

DataTable сортировка по дате, используя RowFilter (меньше или больше определенной даты)
Добрый день! Есть DataTable1 с текстовыми колонками: Дата и Датасорт. Колонка "Дата" выглядит так: 21.07.2016 ...

Массив: Построчная сортировка матрицы по принципу: все числа больше 0 разместить по возрастанию
Здравствуйте! Подскажите, пожалуйста, как лучше всего отдельно отсортировать каждую строку двумерного массива по такому принципу:...

Сортировка массива каждым из 3 способов (пузырьковая сортировка, сортировка выбором, сортировка вставкой)
1. Напишите программу, которая выполняет следующие функции: • заполнение элементов массива вещественными числами с заданной ...

Сортировка выбором, сортировка вставкой, сортировка заменой, сортировка обменом ("пузырьковая" сортировка)
Создать класс, содержащий массив и реализующий алгоритмы сортировки и бинарного поиска в этом массиве. Класс описать с помощью...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru