сравнение элементов списка
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нем неправильно.
Необходимо обновить браузер или попробовать использовать другой.
zaivanza
Новичок
Пользователь
Дек 28, 2021 28 1 3
вот у меня есть два списка
mas1 = [‘BTC_USDT 48956.76’, ‘ETH_USDT 3901.36’, ‘DOT_USDT 28.12’]
mas2 = [‘BTCUSDT 48978.56000000’, ‘DOTUSDT 27.1000000’, ‘ETHUSDT 3902.36000000’]
Как сравнивать числа элементов одного списка с другим, если они разбросаны не по порядку?
То есть мне нужно сравнить DOTUSDT (mas2) c DOT_USDT (mas1)
stud_55
Модератор
Команда форума
Модератор
Апр 3, 2020 1 522 671 113
Как сравнивать числа элементов одного списка с другим, если они разбросаны не по порядку?
То есть мне нужно сравнить DOTUSDT (mas2) c DOT_USDT (mas1)
Можно преобразовать списки в словари, потом в цикле сравнить значение по каждому ключу:
mas1 = ['BTC_USDT 48956.76', 'ETH_USDT 3901.36', 'DOT_USDT 28.12'] mas2 = ['BTCUSDT 48978.56000000', 'DOTUSDT 27.1000000', 'ETHUSDT 3902.36000000'] d1 = d2 = def compare(k1, k2): if d1[k1] > d2[k2]: print(f" (mas1) > (mas2)") elif d1[k1] == d2[k2]: print(f" (mas1) == (mas2)") else: print(f" (mas1) < (mas2)") # сравнение значений по всем ключам for k1, v1 in d1.items(): k2 = k1.replace('_', '') compare(k1, k2) # сравнение значений по одному ключу compare('DOT_USDT', 'DOTUSDT')
Сравнение элементов в списке
Отсортировать в списке списков элементы по убыванию значений элементов в самом первом списке
Даны натуральные числа n, m>=2, список списков, состоящий из n элементов по m чисел в элементе.
Сравнение элементов в списке
Всем привет! Помогите пожалуйста написать простенький цикл для сравнения имен в списке. Суть такова.
Сравнение элементов в списке
ошибка : if (arLi == arLi) - ArgumentOutOfRangeException(Индекс за пределами диапазона) .
26 / 17 / 10
Регистрация: 08.04.2020
Сообщений: 69
Сообщение было отмечено vladaerovaja как решение
Решение
Дружище, как два пальца:
1 2 3 4 5 6
numbers = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] goal = [] for i in numbers: if i 5: goal.append(i) print(goal)
Не забудь поставить плюсик в карму
26 / 17 / 10
Регистрация: 08.04.2020
Сообщений: 69

Сообщение было отмечено vladaerovaja как решение
Решение
Скрин прилагается
814 / 526 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
list(filter(lambda x:x5,[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]))
Добавлено через 31 секунду
[i for i in [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] if i5]
26 / 17 / 10
Регистрация: 08.04.2020
Сообщений: 69
Я же так написала, что-бы челу понятно было. Вопрос то детский
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Сравнение в списке
Нужно написать программу, в которой можно определить, есть ли в 8-ых классах однофамильцы. Данные.
Отсортировать в списке списков элементы по убыванию значений элементов в самом первом списке
Даны натуральные числа n, m>=2, список списков, состоящий из n элементов по m чисел в элементе.
Как прописать функциию для сравнение чисел в списке!
Доброй день дорогие форумчани не получаеться у меня придумать функцию для сравнения чисел в списке.
Список из двух элементов: значение наибольшего элемента в списке и индекс этого элемента в списке
Напишите программу с функцией, которая для списка, переданного аргументом, возвращает список из.
Максимум отрицательных элементов и сумма положительных элементов, содержащихся в списке
Составить программу на Python, одну версию без включения библиотек, другую с numpy, которая будет.
Сравнение и идентичность двух списков в Python
Если нужен список уникальных элементов в объединении двух списков:
result = list(set(lst1 + lst2)) # ['red', 'white', 'green', 'blue']
Симметричная разность двух списков:
result = list(set(lst1) ^ set(lst2)) # ['green', 'blue']
Обычная разность(множество из lst1 не входящее в lst2 ):
result = list(set(lst1) - set(lst2)) # ['green','blue']
Вариант, сохраняющий порядок с меньшим количеством конверсий типов:
result = [x for x in lst1 if x in set(lst2))]
Как сравнить поиндексно значения двух списков?
Имеем два списка:
lit1 = [23, 56, 78, 69] lit2 = [11, 89, 33, 45]
Задача состоит в том, чтобы сравнить эти списки поиндексно, при сравнении меньший элемент вынести в отдельный список result .
Смотрим решение с комментариями к коду:
list1 = [23, 56, 78, 69] list2 = [11, 89, 33, 45] # список для результата result = [] # перебираем элементы списка # в пределах длины первого списка for i in range(len(lst1)): # сравниваем элементы первого списка # с элементами второго списка if lst1[i] lst2[i]: # добавляем в итоговый список `result` # элемент из первого, если он меньше result.append(list1[i]) else: # иначе - добавляем элемент из второго списка result.append(list2[i]) # выводим итоговый список print(result)
Код выше можно записать короче, при помощи выражения-генератора списка или функции map()
result = [min(p) for p in zip(list1, list2)] # или result = list(map(min, zip(l1, l2)))
Вычисление идентичности двух списков в Python.
Задача состоит в том, чтобы проверить, содержат ли два списка точно одинаковые элементы. Это довольно полезная распространенная задача.
Так как оператор == сравнивает списки поиндексно слева направо, то решение состоит в том, чтобы перед сравнением эти списки отсортировать, ведь заранее неизвестно, упорядочены они или нет.
Метод списка list.sort() сортирует его на месте (т.е. не создает новый). Если необходимо сохранить начальную сортировку списков, то для сортировки используйте функцию sorted() , она создаст новый отсортированный список, который можно сравнивать.
lst1 = [5, 3, 1, 2, 4] lst2 = [1, 2, 4, 3, 5] if lst1.sort() == lst2.sort(): print('Списки идентичны') else: print('Списки не идентичны')
- КРАТКИЙ ОБЗОР МАТЕРИАЛА.
- Список Python как аргумент по умолчанию
- Использование списка в качестве стека
- Использование списка в качестве очереди
- Генератор списка list
- Эффективное использование генераторов списков
- Операция присваивания на месте и списки
- Поведение списков Python в разных областях видимости
- Сравнение и идентичность двух списков
- Как получить несколько последних элементов списка
Сравнение списков в Python и поиск совпадающих элементов
Иногда может возникнуть необходимость сравнить два списка в Python и найти совпадающие элементы. Рассмотрим пример:
список_1 = [1, 2, 3, 4, 5] список_2 = [9, 8, 7, 6, 5]
Цель — создать функцию, которая принимает на вход два списка и возвращает список с элементами, которые присутствуют в обоих списках. В данном случае, таким элементом будет число 5.
Решение с использованием циклов
Простейшим решением будет использование двух вложенных циклов. Первый цикл будет проходить по элементам первого списка, а второй — по элементам второго списка. Если элементы совпадают, то они добавляются в итоговый список.
def returnMatches(a, b): matches = [] for i in a: if i in b: matches.append(i) return matches
Решение с использованием множеств
Еще одним эффективным способом решения этой задачи является использование множеств в Python. Множества — это неупорядоченные коллекции уникальных элементов. Они поддерживают операции, которые обычно применяются к математическим множествам, такие как объединение, пересечение и разность.
В Python множества можно создать с помощью функции set() или с помощью фигурных скобок <>.
def returnMatches(a, b): return list(set(a) & set(b))
В данном случае используется операция пересечения (&), которая возвращает элементы, присутствующие в обоих множествах. Затем результат преобразуется обратно в список с помощью функции list().
Оба подхода успешно решают задачу, однако использование множеств обеспечивает более высокую производительность на больших объемах данных.
