Я заметил в других вопросах, что есть (или были) несколько проблем с TKinter в Spyder. Некоторое время я использовал его в IDLE, но переехал в Spyder и столкнулся с некоторыми проблемами.
Я использую Python 3.6.4 с Spyder 3.2.8 из Anaconda 1.8.4, в Windows 7 Enterprise.
Когда я пытаюсь использовать некоторые функции TKinter (например, filedialog.askdirectory
), консоль Spyder зависает.
Я читал разные форумы, но до сих пор ни у кого нет такой же проблемы или решения этой проблемы.
Вот простой код, который будет работать в IDLE, но не в SPYDER:
import os
from tkinter import Tk, filedialog
Tk().withdraw()
print("Done WITHDRAW")
currentdir= os.getcwd()
print("Done GETCWD")
filename= filedialog.askdirectory(title="Select folder", initialdir=currentdir)
print("Done ASKDIRECTORY")
В результате я получаю:
runfile('M:/Users/KPK2/.../hello.py', wdir='M:/Users/KPK2/...')
Done WITHDRAW
Done GETCWD
И консоль продолжает работать, ожидая, пока ASKDIRECTORY откроет новое окно для выбора файла. В бездействии это работает просто отлично.
Кто-нибудь знает, в чем может быть проблема и какое-то возможное решение?
Я читал о решениях других потоков, таких как обновление до Spyder 3.0 (у меня уже есть 3.2.8) или изменение некоторых «внешних модулей» для «Консоли» в настройках, но в моем окне «Prefereneces» такой вкладки нет (не Иначе я не знаю, как это сделать).
Спасибо.