Форум программистов, компьютерный форум, киберфорум
Python: Tkinter
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 15.09.2019
Сообщений: 6

Entry Tkinter

07.10.2019, 16:45. Показов 2148. Ответов 8

Студворк — интернет-сервис помощи студентам
Привет всем, задача стоит в том чтоб посчитать определенный интеграл на Tkinter'e.Пользователь должен ввести пределы, саму функцию и количество разбиений. Дальше интеграл должен вычисляться по формуле симпсона НО выдает какую то странную ошибку, бьюсь уже неделю вторую но все равно прога не пашет, укажите,пожалуйста,в чем ошибка, очень прошу).
if (int(n) % 2 != 0):
ValueError: invalid literal for int() with base 10: ''
Это одна из ошибок. Еще выдает то что функцию вызывает как строку почему то.
Вот код:
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
from tkinter import *
from math import *
from numpy import *
root = Tk()
e1=Entry()
e2=Entry()
e3=Entry()
e4=Entry()
a=e1.get()
b=e2.get()
n=e3.get()
 
 
inp=e4.get()
def f(x): 
    return eval(inp)
 
 
def simpson(a, b, n):
    if (int(n) % 2 != 0):
        n += 1
    k = int(n) / 2
    h = (int(b) - int(a)) / int(n)
    h2 = h * 2
    S = (f(a) + f(b)) / 2
    x = h
    k = int(k)
    for i in range(0, k - 1):
        S += 2 * (f(x))
        S += f(x + h)
        x += h2
    S += 2 * (f(x))
    S *= h * 2 / 3
    return S
 
print(simpson(a,b,n))
 
def button_clicked():
    print(simpson_rule(a,b,n))
 
 
button = Button(root)
button.configure(text="vichislit",command=button_clicked)
e1.pack()
e2.pack()
e3.pack()
e4.pack()
button.pack()
root.mainloop()
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.10.2019, 16:45
Ответы с готовыми решениями:

tkinter entry
Доброго времени суток Вот есть такое окно from tkinter import * def win(): root = Tk() # Создал окно ...

Tkinter и Entry
Доброго времени суток! Для вуза надо написать лабораторную работу.Все довольно просто-приблизительное вычисление значения функции в точке...

Функция entry tkinter
Не могу понять как реализовать ввод радиуса Код выводит график кардиоиды при нажатии кнопки Draw Я не могу понять как мне реализовать...

8
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
07.10.2019, 16:57
Цитата Сообщение от Adunac Посмотреть сообщение
ValueError: invalid literal for int() with base 10: ''
а чтотебе не понятно тут? за неделю не смог перевести в гугле?
я помогу, далее речь от лица интерпретатора: "дорогой программист, не пытайся привести к инту строку, да еще и пустую. Пожалуйста!"

Добавлено через 47 секунд
Цитата Сообщение от Adunac Посмотреть сообщение
Еще выдает то что функцию вызывает как строку почему то.
потому что ты так написал) если покажешь ошибку я снова для тебя переведу (но есть гугл-переводчик и здравый смысл)
0
0 / 0 / 0
Регистрация: 15.09.2019
Сообщений: 6
07.10.2019, 17:40  [ТС]
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
35
36
37
38
39
40
41
42
43
from tkinter import *
from math import *
from numpy import *
root = Tk()
e1=Entry()
e2=Entry()
e3=Entry()
e4=Entry()
a=e1.get()
b=e2.get()
n=e3.get()
inp=e4.get()
def f(x):
    return eval(inp)
def simpson_rule(f, a, b, n):
    a=int(e1.get())
    b=int(e2.get())
    n=int(e3.get())
    if (n % 2 != 0):
        n += 1
    k = n / 2
    h = (b - a) / n
    h2 = h * 2
    S = (f(a) + f(b)) / 2
    x = h
    k = int(k)
    for i in range(0, k - 1):
        S += 2 * (f(x))
        S += f(x + h)
        x += h2    
    S += 2 * (f(x))
    S *= h * 2 / 3
    return S
def button_clicked():
    print(simpson_rule(a,b,n,f))
button = Button(root)
button.configure(text="vichislit",command=button_clicked)
e1.pack()
e2.pack()
e3.pack()
e4.pack()
button.pack()
root.mainloop()
TypeError: 'str' object is not callable
Почему оно считает функцию строкой, можешь подсказать?
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
07.10.2019, 17:43
Цитата Сообщение от Adunac Посмотреть сообщение
Почему оно считает функцию строкой, можешь подсказать?
не так! задай вот такой вопрос -зачем я (то есть ты) ипользую строку как функцию?
и я знаю ответ -потому что ошибся и не знаешь как использовать отладчик.

1) код убери в теги пайтон чтобы он стал читаемым
2) напиши ошибку целиком, ведь интерпретатор настолько умен что прямо четко показывает где ошибка в какой строке.
0
0 / 0 / 0
Регистрация: 15.09.2019
Сообщений: 6
07.10.2019, 17:45  [ТС]
S = (f(a) + f(b)) / 2
TypeError: 'str' object is not callable
Вот тут почему то строкой считает
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
07.10.2019, 17:52
Цитата Сообщение от Adunac Посмотреть сообщение
Вот тут почему то строкой считает
опять? повторяю -не он считает, а ты где то ошибся и вызываешь строку как функцию!
Цитата Сообщение от Adunac Посмотреть сообщение
def button_clicked():
* * print(simpson_rule(a,b,n,f))
ты тут порядок не перепутал случаем?
0
0 / 0 / 0
Регистрация: 15.09.2019
Сообщений: 6
07.10.2019, 18:07  [ТС]
S = (f(a) + f(b)) / 2
TypeError: 'float' object is not callable
Теперь почему то выдает эту ошибку
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
07.10.2019, 18:32
Adunac, на этом я пас, последний раз говорю -не "почему то", а потому что ты не то и не туда передаешь!
Читаем как пользоваться отладчиком!
Внимательно.
0
0 / 0 / 0
Регистрация: 15.09.2019
Сообщений: 6
07.10.2019, 19:03  [ТС]
Понял-принял, спасибо. В последний раз попрошу помочь если не сложно, ошибка у меня в том что я не могу нормально передать аргументы функции f(x). Как мне сделать так чтоб функция кушала любой аргумент и подставляла его вместо X в формуле которую введет пользователь?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.10.2019, 19:03
Помогаю со студенческими работами здесь

Tkinter. Записанный текст в Entry
Здравствуйте, мне надо сделать таблицу, я ее решил делаю с помощью Entry в цикле. Подскажите пожалуйста, как вывести текст в Entry? Это...

Tkinter entry узнать количество символов
Пользователь ввел в строку символы, нужно узнать их количество. Может есть какая-то функция?

Tkinter. Считывание строки функции с использованием Entry()
Доброго времени суток! Стокнулся с проблемой,никак не могу отредактировать код таким образом,чтобы с помощью Entry() пользователь мог...

[Tkinter] Как получить значение переменной из entry?
Tkinter как получить значение переменной из entry

Tkinter забывает введенные значения в entry после def
Доброго времени суток, уважаемые программисты, на днях загорелся идеей, как написать программу на питоне с использованием графического...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru