Вы находитесь на странице: 1из 3

from create_bot import bot, dp

File "/home/adminosa/create_bot.py", line 5, in <module>


from handlers import router
File "/home/adminosa/handlers.py", line 17, in <module>
from lexicon import DEFAULT_KEYBOARD, LEXICON_INLINE
File "/home/adminosa/lexicon.py", line 2, in <module>
DEFAULT_KEYBOARD: dict[str, str] = {
TypeError: 'type' object is not subscriptable

🐱
Ошибка TypeError: 'type' object is not subscriptable указывает на то, что вы
пытаетесь выполнить операцию индексации (подсчета) на объекте, который не является
поддерживающим эту операцию.
В вашем случае, ошибка возникает на строке DEFAULT_KEYBOARD: dict[str, str] = {.
Вероятно, у вас используется версия Python, которая не поддерживает аннотации типов
с использованием оператора подсчета (индексирования) [].
Использование оператора подсчета для аннотаций типов было введено в Python 3.9.
Если вы используете более раннюю версию Python, вы не сможете использовать этот
синтаксис.
Для решения этой проблемы, вам необходимо либо обновить версию Python до 3.9 или
более поздней, либо изменить синтаксис аннотаций типов на совместимый с вашей
версией Python.
Например, вместо DEFAULT_KEYBOARD: dict[str, str] = { вы можете использовать
DEFAULT_KEYBOARD = {}, чтобы определить словарь без указания типов.
Проверьте версию Python, которую вы используете, и внесите соответствующие
изменения в код, чтобы исправить эту ошибку.
а как на Linux установить 3.9

🐱
Для установки Python 3.9 на Linux вам потребуется выполнить несколько шагов. Вот
инструкции для различных дистрибутивов:
Ubuntu и Debian:
Обновите список пакетов: sudo apt update
Установите необходимые зависимости: sudo apt install build-essential zlib1g-dev
libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
Скачайте исходный код Python 3.9: wget
https://www.python.org/ftp/python/3.9.7/Python-3.9.7.tgz
Распакуйте архив: tar -xf Python-3.9.7.tgz
Перейдите в каталог с исходным кодом: cd Python-3.9.7
Сконфигурируйте сборку: ./configure --enable-optimizations
Соберите и установите Python: make && sudo make install
CentOS и Fedora:
Обновите систему: sudo yum update
Установите необходимые зависимости: sudo yum install gcc openssl-devel bzip2-devel
libffi-devel
Скачайте исходный код Python 3.9: wget
https://www.python.org/ftp/python/3.9.7/Python-3.9.7.tgz
Распакуйте архив: tar -xf Python-3.9.7.tgz
Перейдите в каталог с исходным кодом: cd Python-3.9.7
Сконфигурируйте сборку: ./configure --enable-optimizations
Соберите и установите Python: make && sudo make install
После завершения установки Python 3.9, вы можете проверить версию с помощью команды
python3.9 --version.
File "/home/adminosa/main.py", line 4, in <module>
from create_bot import bot, dp
File "/home/adminosa/create_bot.py", line 2, in <module>
from aiogram import Bot, Dispatcher
ModuleNotFoundError: No module named 'aiogram'
🐱
Ошибка ModuleNotFoundError: No module named 'aiogram' указывает на то, что модуль
aiogram не найден.
Чтобы устранить эту ошибку, вам нужно установить модуль aiogram. Вы можете
установить его с помощью инструмента управления пакетами Python, такого как pip.
Вот как это можно сделать:
Убедитесь, что у вас установлен pip. Если у вас нет его, установите его, выполнив
команду:
sudo apt install python3-pip
Установите модуль aiogram, выполните следующую команду:
pip3 install aiogram
Если у вас есть несколько версий Python, убедитесь, что вы используете pip3 для
Python 3.x.
После установки модуля aiogram вы должны быть в состоянии успешно импортировать его
в своем коде без ошибки ModuleNotFoundError.
adminosa@tr069:~$ python3.9 main.py
Traceback (most recent call last):
File "/home/adminosa/main.py", line 4, in <module>
from create_bot import bot, dp
File "/home/adminosa/create_bot.py", line 2, in <module>
from aiogram import Bot, Dispatcher
ModuleNotFoundError: No module named 'aiogram'

🐱
Ошибка ModuleNotFoundError: No module named 'aiogram' означает, что модуль aiogram
не был найден при запуске вашего скрипта main.py.
Вероятно, модуль aiogram не был установлен для Python 3.9. Пожалуйста, убедитесь,
что вы выполнили установку модуля aiogram с помощью pip3.9, а не pip3.
Вы можете установить модуль aiogram для Python 3.9, выполнив следующую команду:
pip3.9 install aiogram
После этого, попробуйте запустить ваш скрипт main.py снова, и убедитесь, что модуль
aiogram успешно импортируется без ошибки ModuleNotFoundError.
adminosa@tr069:~$ pip3.9 install aiogram
pip3.9: command not found

🐱
Извините за путаницу. Ваша система, вероятно, не имеет команды pip3.9. Вместо
этого, вы можете использовать команду pip3 для установки модуля aiogram для Python
3.9. Вот как это можно сделать:
pip3 install aiogram
Убедитесь, что вы выполняете эту команду от имени пользователя, у которого есть
права на установку пакетов Python. После установки модуля aiogram, попробуйте
запустить ваш скрипт main.py снова, и убедитесь, что модуль aiogram успешно
импортируется без ошибки ModuleNotFoundError.
делал не помогает Traceback (most recent call last):
File "/home/adminosa/main.py", line 4, in <module>
from create_bot import bot, dp
File "/home/adminosa/create_bot.py", line 2, in <module>
from aiogram import Bot, Dispatcher
ModuleNotFoundError: No module named 'aiogram'

🐱
Приношу извинения за путаницу. Если вы установили модуль aiogram с помощью pip3 для
Python 3.9, но ошибка ModuleNotFoundError все еще возникает, возможно, у вас есть
несколько версий Python на вашей системе и модуль был установлен для другой версии
Python.
Проверьте, какая версия Python используется для запуска вашего скрипта main.py.
Выполните следующую команду:
python3.9 --version
Если вы получаете версию Python 3.9, тогда модуль aiogram должен был быть
установлен для этой версии. В противном случае, вам нужно установить модуль aiogram
с помощью правильной версии Python.
Если это не помогает, попробуйте установить модуль aiogram с помощью следующей
команды:
python3.9 -m pip install aiogram
Убедитесь, что вы выполняете эту команду от имени пользователя, у которого есть
права на установку пакетов Python.
Если проблема все еще не решена, пожалуйста, уточните, какая версия Python
используется для запуска вашего скрипта main.py, и я постараюсь помочь вам дальше.

Вам также может понравиться