Форум сайта python.su
Здравствуйте!
Вопрос такой.
В окно Text вводим столбиком числа – к примеру (либо копируем их откуда ни будь и вставляем в окно)
1.2
2.3
3.5
4.5
Требуется конвертировать этот столбец в список (float), который впоследствии в виде переменной пойдет для дальнейших расчетов.
Начало кода написал, а дальше не знаю.
Перерыл гугл и прочие яндексы. Пытался найти ответ в умных книжках – ни чего внятного.
Питон недавно начал изучать, так что новичок.
Заранее спасибо за помощь.
from tkinter import * def calc (): text1 = (text. get (1.0, END)) print(text1) #Дальше надо как то конвертировать столбец, в список [1.2,2.3,3.5,4.5] root = Tk() text = Text(width=25, height=15) text.pack() But = Button(text="Расчет", command=calc) But.pack(side=LEFT) root.mainloop()
Отредактировано Alex_Py (Июнь 20, 2020 15:28:44)
Офлайн
# from decimal import Decimal def calc(): text1 = (text.get(1.0, END)) print(list(map(Decimal, text1.strip().split("\n"))))
from tkinter import *
Отредактировано 4kpt_V (Июнь 20, 2020 15:36:43)
Офлайн
Спасибо.
А почему не использовать tkinter?
Офлайн
Alex_Py тут рекомендуют не импортировоть все без разбора (на мой взгляд излишне категрично но в целом верно) из модуля а только то что нужно
Отредактировано AD0DE412 (Июнь 21, 2020 17:29:26)
Офлайн
Alex_PyПотому как Вам text поле вернуло строку. Вот мы с Вами со строкой и работаем. Т.е. нужно работать с тем типом данных, который возвращает тот или иной метод.
А почему не использовать tkinter?
Офлайн
Спасибо за советы.
Но, если по моему замыслу, в конечном продукте я хочу видеть и текстовые поля для ввода информации пользователем (Text, Entry) и текстовое поле для вывода информации и поле для вывода графика результатов расчета, достаточно ли мне import Tkinter as tk?
В примерах, которые я видел, как правило, используют from tkinter import *.
Надо будет поглубже подразобраться с этим вопросом.
Еще раз спасибо.
Офлайн
Да, хватит и просто import tkinter as tk. И перед виджетами ставить tk.Text, tk.Button и т.п.
Офлайн
Большое спасибо.
Учиться мне еще и учиться.
Офлайн