#python #list
#python #Список
Вопрос:
Я разработал простую функцию, которая просматривает введенный список чисел, определяет минимальное и максимальное значения, затем заменяет их оба на среднее значение между ними, функция здесь:
def mainfunction(list_of_numbers):
smallest_number = list_of_numbers[0]
for a in list_of_numbers:
if a < smallest_number:
smallest_number = a
largest_number = list_of_numbers[0]
for b in list_of_numbers:
if b > largest_number:
largest_number = b
midpoint = (smallest_number largest_number)/2
final_list = [x if (x != largest_number and x != smallest_number) else midpoint for x in list_of_numbers]
return final_list
print(mainfunction([10, 7, 14, 3, -200, 8, 1, -12, 250]))
К сожалению, я не могу заставить функцию работать с ТАБЛИЦАМИ чисел, есть ли простой способ преобразовать таблицу чисел в список? Любая информация будет оценена, приветствия!
Комментарии:
1. что вы подразумеваете под таблицей? это вложенный список?
2. О, черт, извините, это список списков, так что да, это ВЛОЖЕННЫЙ СПИСОК, моя ошибка должна была проясниться. Итак, в основном я хотел бы преобразовать: [[3,4], [15,16], [19,20]] В, [3, 4, 15, 16, 19, 20]
Ответ №1:
Вы можете использовать itertools.chain
from itertools import chain
a = [[3,4], [15,16], [19,20]]
res = list(chain.from_iterable(a))
print(res)
Вывод:
[3, 4, 15, 16, 19, 20]
с пониманием списка
res = [x for lst in a for x in lst]
Комментарии:
1. @Programming55 для нахождения минимальных и максимальных значений вы можете использовать встроенные методы
min()
иmax()