#python #user-interface
#python #пользовательский интерфейс
Вопрос:
Я хочу создать графический интерфейс с помощью Python, и Flexx кажется хорошим фреймворком, поэтому я перешел к документации и начал учебник там. Я скопировал код из первого примера:
from flexx import flx
class Example(flx.Widget):
def init(self):
flx.Button(text='hello')
flx.Button(text='world')
При запуске этого кода я получаю сообщение об ошибке
File "C:UsersaxeldAppDataLocalProgramsPythonPython39libsite-packagesflexxflx.py", line 10, in <module>
from .app import *
File "C:UsersaxeldAppDataLocalProgramsPythonPython39libsite-packagesflexxapp__init__.py", line 38, in <module>
from ._app import App, manager
File "C:UsersaxeldAppDataLocalProgramsPythonPython39libsite-packagesflexxapp_app.py", line 11, in <module>
from base64 import encodestring as encodebytes
ImportError: cannot import name 'encodestring' from 'base64' (C:UsersaxeldAppDataLocalProgramsPythonPython39libbase64.py)
Понятия не имею, почему это происходит или как это исправить. Пожалуйста, помогите
Комментарии:
1. Этот используемый вами модуль, похоже, не обновлялся для последних версий Python —
base64.encodestring
устарел с версии Python 3.1 и полностью удален в версии 3.9. Вы могли бы исправить это, изменив эту строку наfrom base64 import encodebytes
, но в модуле, вероятно, будут другие проблемы, связанные с версией.2. Вероятно, это так. Я только что проверил, и в последний раз этот модуль обновлялся в 2007 году, так что да, я не думаю, что это лучший вариант. Спасибо