Я использую графический интерфейс tkinter для предоставления кусков кода в стек для моей программы, из которой можно рисовать и выполнять.проблема возникает, когда я использую встроенную в Python функцию «ввода».Он требует ввода с консоли и не принимает его от входа, предоставленного tkinter.Любая идея будет принята с благодарностью.
(Правка: я использую Python 3.5 через Anaconda на Windows 10)
полный код можно найти здесь: https://github.com/uhDreamer/simplePythonEnv/blob/master/simpleEnv.py
(пожалуйста, не судите код / стиль слишком сильно, это в основном просто для развлечения и посмотреть, что я могу сделать.)
Честно говоря, я даже не знаю, с чего начать, чтобы решить эту проблему.Я подумал, может быть, перенаправить stdin, как я сделал с stdout, но я не мог найти ничего, что касается моей конкретной проблемы.
while running:
if self.stack:
code = self.stack.pop()
with stdoutIO() as out:
try:
exec(code)
except Exception as e:
gui.log(str(e))
finally:
self.addToHistory(code)
gui.log(out.getvalue())
else:
time.sleep(.1)
Мне нужно, чтобы программа получила свой ввод от следующего ввода, отправленного через графический интерфейс tkinter, и ждала его, если его нет.