0 / 0 / 0
Регистрация: 12.06.2020
Сообщений: 5

Исправить код

12.06.2020, 13:55. Показов 1609. Ответов 7

Студворк — интернет-сервис помощи студентам
Люди, пожалуйста хэлп! Надо досдать этот код, но не понимаю, что не так (python).

Задание: Функция h1(list) должна быть способна принять в качестве аргумента список list целых чисел и возвратить значение второго по величине среди элементов списка, величина которых больше их индекса. В случае отсутствия указанного значения функция должна вернуть None.
Не разрешается использование встроенных функций min(), max(), sum(), sorted(), list() и set().

Вот моя версия, но она с ошибкой:

def h1(list):
if len(list) == 0:
return None
else:
s1 = None
s2 = None
for x in[list[i] for i in range(len(list)) if list[i] > i]:
if x > s1:
s2 = s1
elif x > s2:
s2 = x
return s2

---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-4-f326ba3693a1> in <module>()
----> 1 h1([2, 16, 8, 3])

<ipython-input-3-200f8dfbcb3d> in h1(list)
6 s2 = None
7 for x in[list[i] for i in range(len(list)) if list[i] > i]:
----> 8 if x > s1:
9 s2 = s1
10 elif x > s2:

TypeError: '>' not supported between instances of 'int' and 'NoneType'
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.06.2020, 13:55
Ответы с готовыми решениями:

Исправить код
Задача: Радиус колеса автомобиля равен (х)101 см.Колесо сделало (10)50000 оборотов и проехало расстояние (х)313 км. Найти основание...

Исправить код
Что в этом коде не так, когда я его запускаю мне ошибку на выдает, просто сам код не запускаеться import math y0 = 3 while...

Исправить код
Здравствуйте. Помогите пожалуйста доработать код, все открывается все отлично, но когда вводишь два числа и нажимаешь на кнопку...

7
Эксперт Python
 Аватар для unfindable_404
693 / 471 / 204
Регистрация: 22.03.2020
Сообщений: 1,051
12.06.2020, 14:04
Ну вот как вы думаете, что больше число 2 или строка "Привет"?
Вы сравниваете разные типы данный число и None.
У вас в 5 строке в s1 записывается None,
в 7 строке в переменную x записывается число из списка,
а в 8 строке вы сравниваете, что из них больше.
И ошибка вам как раз об этом говорит.
1
0 / 0 / 0
Регистрация: 12.06.2020
Сообщений: 5
12.06.2020, 14:13  [ТС]
Точно, спасибо! А вы может подскажете мне, как бы это исправить? Пожалуйста
0
Эксперт Python
 Аватар для unfindable_404
693 / 471 / 204
Регистрация: 22.03.2020
Сообщений: 1,051
12.06.2020, 14:29
Python
1
2
3
4
5
6
7
8
def h1(list):
    if not list:
        return
    s1 = None
    for x in (list[i] for i in range(len(list)) if list[i] > i):
        if s1 is None or x > s1:
            s1 = x
    return s1
Добавлено через 9 минут
PS. Не используйте имена переменных, которые совпадают с именами встроенных классов или функций. И старайтесь называть переменные осмысленно.
Python
1
2
3
4
5
6
7
8
9
def h1(list_):
    if not list_:
        return
    max_item = None
    for index, item in  enumerate(list_):
        if item > index:
            if max_item is None or item > max_item:
                max_item = item
    return max_item
1
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
12.06.2020, 14:37
Цитата Сообщение от Sasha221 Посмотреть сообщение
Не разрешается использование встроенных функций [...] sorted(), list() и set().
Хм, а так можно?
Python
1
2
3
ls = [1,2,3]
s = {1,2,3}
ls.sort()
1
0 / 0 / 0
Регистрация: 12.06.2020
Сообщений: 5
12.06.2020, 14:39  [ТС]
Благодарю душевно! Только там надо 2ое по величине число, но кажется у меня получилось! СПАСИБО
0
Эксперт Python
 Аватар для unfindable_404
693 / 471 / 204
Регистрация: 22.03.2020
Сообщений: 1,051
12.06.2020, 14:40
Sasha221, Упс))) Ну, главное, что вы разобрались.
0
0 / 0 / 0
Регистрация: 12.06.2020
Сообщений: 5
12.06.2020, 14:42  [ТС]
Ухты, не знала о такой функции. Работает верно, но для учителя лучше более детальная запись, Спасибо вам
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.06.2020, 14:42
Помогаю со студенческими работами здесь

Исправить код, пожалуйста
import sys a = b = 0 for x in sys.stdin: x = x.split(' ') if x not in a: a.append(x) else:

Исправить код с вычислением функции
Всем привет, первая тема на форуме. Есть вот такой код, и вот такие ошибки. Что ему не нравится? y =...

Исправить код поиска дубликатов
У Петра скопилась горка юбилейных монет, среди которых попадаются дубликаты. Монеты попадаются разных номиналов и с изображениями разных...

Не запускается код. что нужно исправить?
things = {'зажигалка': 20, 'компас': 100, 'фрукты': 500, 'рубашка': 300, 'термос': 1000, 'аптечка': 200, 'куртка': 600, 'бинокль':...

Как исправить код, чтобы заработал
def count_trajectories(N, allowed: list): k = )] + * (N - 3) for i in range(3, N + 1): if allowed: k = k + k + k ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru