Вопрос №577 от пользователя Mark в уроке «Основы синтаксиса», курс «Введение в Python»
объясните пожалуйста почему код не проходит ваш тест, в то время как у меня все проверки успешны?
Python->Типы-коллекции->test3
def flatten(lists):
results = []
for numbers in lists:
if type(numbers)==int:
numbers = [numbers]
elif type(numbers)==set:
numbers = list(numbers)
for i in range(len(numbers)):
results.append(numbers[i])
results.sort()
return results
спасибо
Элементом может быть не только множество, но и список, кортеж. То есть тип элемента нужно проверять на set, list, tuple, а не только на set.
Кроме того, избегайте явного сравнения типов type(obj) == set
.
Используйте isinstance(obj, int)
или для нескольких типов isinstance(obj, (type1, type2, ...))
.
я без поняття, переробив щоб прохидило перевірки на всі типи і знов облом. Чи могли б ви підкоректувати мій код або в крайньому випадку рішення кинути, а я вже розберусь??... не охота продовжувати далі поки всі задачі не зробив
Я приведу ключевое условие:
if isinstance(item, (list, tuple, set)):
...process as nested item
else:
...process as single item
Используйте Хекслет по максимуму!
- Задавайте вопросы по уроку
- Проверяйте знания в квизах
- Проходите практику прямо в браузере
- Отслеживайте свой прогресс
Зарегистрируйтесь или войдите в свой аккаунт
С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.







