как работает код на питоне?

Рейтинг: 0Ответов: 1Опубликовано: 14.02.2023
ware_1 = input("Введите название товара и его стоимость через пробел: ")

cost_1 = [int(i) for i in ware_1.split() if i.isdigit()]

Объясните пожалуйста, как код выделяет числа из строки?

Ответы

▲ 2Принят
cost_1 = [str(i) for i in ware_1.split() if i.isdigit()]

Такая конструкция называется списковое включение. Выполняемые в ней операции можно поделить на несколько этапов:

  1. ware_1.split() - разделяет строку на слова

  2. for i in - итерирует по каждому слову (последовательно перебирает эти слова), где i назначается новое слово на каждом этапе итерации

  3. if isdigit(i) - это условие, выполнение которого необходимо для включения в список: здесь оно проверяет, является ли слово числом. И если не является, то исключает его из перебора

  4. str(i) - преобразует каждое "число" (которое и так имеет тип строки, так что здесь без особого смысла) к строке