Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/75: Рейтинг темы: голосов - 75, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 03.12.2020
Сообщений: 3

TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'

03.12.2020, 19:09. Показов 15152. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
def F(n):
    if n > 2:
        return G(n-2)
def G(n):
    if n > 1:
        return F(n - 1) + n
print(F(8))

return F(n - 1) + n
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'

Как исправить ошибку? Аналогичный код, написанный на Паскале выводит правильный ответ 9
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.12.2020, 19:09
Ответы с готовыми решениями:

TypeError: unsupported operand type(s) for //: 'NoneType' and 'int'
Код полностью не готов т.к не могу починить ошибку import numpy as np class GiftSet: def __init__(self, *data): ...

TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'
def task23(start, end): if start > end and start == 17: return 0 if start == end: return 1 if start <...

TypeError: unsupported operand type(s) for %: 'NoneType' and 'float'
Здравствуйте, имеется код: import math import random #f1 = y**2 #f2 = y*z #f3 = x*y + 2*y #f4 = y ** 3

4
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
03.12.2020, 19:26
Цитата Сообщение от misterJ Посмотреть сообщение
Как исправить ошибку?
подумать. да, да помню, сейчас все разжую

Цитата Сообщение от misterJ Посмотреть сообщение
def F(n):
    if n > 2:
        return G(n-2)
а если n меньше или равно 2? верно, пайтон вернет None

Цитата Сообщение от misterJ Посмотреть сообщение
return F(n - 1) + n
здесь вернулся NOne и ты к нему прибавляешь n

Как исправить - или кидать в функцию только больше 2 или написать там и условие что вернуть если меньше или равно 2
0
312 / 192 / 98
Регистрация: 01.05.2014
Сообщений: 522
03.12.2020, 19:28
Цитата Сообщение от misterJ Посмотреть сообщение
Аналогичный код, написанный на Паскале выводит правильный ответ 9
Хотелось бы взглянуть
0
0 / 0 / 0
Регистрация: 03.12.2020
Сообщений: 3
03.12.2020, 19:33  [ТС]
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function G(n: integer):integer; forward;
 
function F(n:integer):integer;
begin
if n > 2 then F:= G(n - 2);
end; 
 
function G(n:integer):integer;
begin
if n > 1 then G:= F(n - 1) + n;
end; 
 
BEGIN
WriteLn(F(8));
END.
Вот код на Паскале вроде работает, выдает 9

Добавлено через 1 минуту
выше прикрепил код
0
312 / 192 / 98
Регистрация: 01.05.2014
Сообщений: 522
04.12.2020, 16:00
Лучший ответ Сообщение было отмечено misterJ как решение

Решение

Так как
Python
1
F(n - 1) + n
возвращает None, добавил
Python
1
else: return 0
Тогда стало считать.
Borland Pascal 7.0 вообще дичь показывает.
Delphi 10.2 получше, но некоторые значения улетают,в третьем десятке небольшой скачок, который к четвертому десятку возвращается к значениям Python.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.12.2020, 16:00
Помогаю со студенческими работами здесь

TypeError на строке 5: unsupported operand types for +: 'NoneType' and 'int'
Вот задача: https://pythontutor.ru/lessons/inout_and_arithmetic_operations/problems/shoelace/ Вот мое решение: a=int(input()) ...

TypeError: unsupported operand type(s) for -: 'int' and 'list'
Подскажите пожалуйста, что нужно сделать, что бы исправить данную ошибку import cv2 from cvzone.HandTrackingModule import...

TypeError: unsupported operand type(s) for +: 'int' and 'list'
Привет, пытаюсь написать бота vk с помощью библиотеки vk_api Хочу сделать так чтобы сообщение отправлялось в 2 беседы сразу, в peer_id...

TypeError: unsupported operand type(s) for *: 'int' and 'type'
Подскажите что за ошибка? TypeError: unsupported operand type(s) for *: 'int' and 'type' import math a=float(input("Введите...

Ошибка: TypeError: unsupported operand type(s) for >>: 'str' and 'int'
class Note(): def __init__(self, note, found=False): self.note = note self.found = found self.pith = ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Ниже машинный перевод статьи The Thinkpad X220 Tablet is the best budget school laptop period . Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы,. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru