0 / 0 / 0
Регистрация: 18.03.2020
Сообщений: 3
1

TypeError: 'int' object is not callable

18.03.2020, 11:18. Показов 1971. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, интересует такой вопросик(вот код):

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
def Fs(t,c,T):
    t0=c
    global Fs
    Fs=0.0
    if 0<=t<1:
        Fs=1
    elif 1<=t<=t0:
        Fs=(t0-t)/t0-1
    elif t0<t<=t0+1:
        Fs=1
    elif t0+1<t<=T:
        Fs=(2*t0-t)/t0-1
    return Fs
 
def f0(t,y): 
    global fo
    f0=0.1*t**2-2*t*y+(1+0.2)*Fs(t,c,T)
    return f0
 
def modif(t,y,h,tmax):
        while t<=tmax:
            t1=t+h
            y1=y+h*f0(t,y)
            y+=0.5*h*(f0(t,y)+f0(t1,y1))
            t+=h
            print(t,'\nМодифицированный метод Эйлера y(x)=',y)
            
c=1.55
h=0.2
t=0
tmax=T=3.05
h=tmax/21
y=0.25
modif(t,y,h,tmax)
Выдает результат: line 16, in f0
f0=0.1*t**2-2*t*y+(1+0.2)*Fs(t,c,T)
TypeError: 'int' object is not callable

Помогите пожалуйста решить проблему. Функции рабочие, но когда f0(t,y)+f0(t1,y1) такая же ошибка выедается, а также когда происходит работа с циклом while. Заранее благодарен.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.03.2020, 11:18
Ответы с готовыми решениями:

TypeError: 'int' object is not callable
Начал изучать питон но столкнулся с проблемой. def d(): x=int(input(&quot;Введите: &quot;))...

Ошибка TypeError: 'int' object is not callable
print(&quot;Введите аргумент вычисляемого выражения: &quot;, end=&quot;&quot;) from math import * a =...

TypeError int object is not callable, ошибка в функции len
Добрый день, Уважаемые форумчане. Я пишу простенький скрипт, суть его в том, что он берет строки...

TypeError: 'list' object is not callable
Только учусь программированию, при написании кода выдают ошибку &quot;TypeError: 'list' object is not...

TypeError: 'module' object is not callable
Помогите, пожалуйста, не понимаю, в чем ошибка. Выводится такая ошибка: Traceback (most recent...

6
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
18.03.2020, 12:03 2
Лучший ответ Сообщение было отмечено Egor_noire как решение

Решение

так Fs число или функция? определитесь
стоит убрать global Fs в функции Fs и все работает
не стоит переменной в функции давать имя этой функции (да и в других, т.к. может получиться так, что перекроете имя какой-то функции)
1
0 / 0 / 0
Регистрация: 18.03.2020
Сообщений: 3
19.03.2020, 16:56  [ТС] 3
Спасибо огромное. Если не сложно, можете пожалуйста поподробнее описать из-за чего возникала проблема?
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
20.03.2020, 08:27 4
Изначально Fs является функцией (ссылка на объект function).
При первом вызове функции вы присваиваете Fs число (int объект). Все в теле функции Fs объект Fs уже не является функцией, т.е. вызвать вы ее больше не можете, т.к. Fs является числом (код не сломается, если вы не будете вызывать Fs).
+ пишите, что Fs является глобальным объектом. Все. Теперь в вашем коде нет функции Fs, есть только int объект, к которому имеется доступ по имени Fs. => Любое обращение к Fs как к функции будет приводит к ошибке.

Забудьте про global. Тут он вам совсем не нужен.
0
0 / 0 / 0
Регистрация: 18.03.2020
Сообщений: 3
20.03.2020, 08:30  [ТС] 5
Очень вам благодарен, спасибо за помощь!
0
Эксперт Python
5434 / 3857 / 1215
Регистрация: 28.10.2013
Сообщений: 9,553
Записей в блоге: 1
20.03.2020, 13:46 6
Egor_noire
Пожалуйста, не пишите код как мелом на доске.
Между переменными, операторами и значениями нужно использовать пробелы.

x = 10, а не с=10.
y + x, а не y+x
t += h, а не t+=h
modif(t, y, h, tmax), а не modif(t,y,h,tmax)
fs = (t0 - t) / t0 - 1, а не Fs=(t0-t)/t0-1
И никогда не пытайтесь использовать глобальные переменные. Только глобальные константы.

И попробуйте начать придумывать переменным осмысленные имена.
0
Fudthhh
20.03.2020, 13:55     TypeError: 'int' object is not callable
  #7

Не по теме:

Garry Galler, а я все думал кто же первый сдастся, думал это буду я, но нет. :)

0
20.03.2020, 13:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.03.2020, 13:55
Помогаю со студенческими работами здесь

TypeError: 'NoneType' object is not callable
вот код# -*- coding: utf-8 -*- &quot;&quot;&quot; This Example will show you how to use register_next_step...

TypeError: 'NoneType' object is not callable
Добрый день всем! Подскажите пожалуйста, при запуске программы, питон ругается. import requests...

TypeError: 'NoneType' object is not callable
Привет, прошу помощи... делаю телеграмм-бот по видео, в точности как на видео пишу, но выдает...

TypeError: 'str' object is not callable
Здравствуйте! Первый раз встретился с данной ошибкой, поэтому не бейте. def...

Max(): TypeError: 'Series' object is not callable
Добрый вечер! Объясните пожалуйста, почему это не работает a=0.1 b=0.2 c=0.3 s= max(s)

TypeError: 'str' object is not callable. Как исправить?
import string file = open(&quot;input.txt&quot;, &quot;r&quot;) db = file.readlines() file.close() file =...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru