ModuleNotFoundError: 没有名为“typing_extensions”的模块
ModuleNotFoundError: No module named ‘typing_extensions’
Python “ModuleNotFoundError: No module named ‘typing_extensions’” 发生在我们忘记typing-extensions
在导入前安装模块或将其安装在不正确的环境中时。
要解决此错误,请通过运行命令安装模块
pip install typing-extensions
。
在项目的根目录中打开终端并安装
typing-extensions
模块。
# 👇️ in a virtual environment or using Python 2 pip install typing-extensions # 👇️ for python 3 (could also be pip3.10 depending on your version) pip3 install typing-extensions # 👇️ if you get permissions error sudo pip3 install typing-extensions pip install typing-extensions --user # 👇️ if you don't have pip in your PATH environment variable python -m pip install typing-extensions # 👇️ for python 3 (could also be pip3.10 depending on your version) python3 -m pip install typing-extensions # 👇️ using py alias (Windows) py -m pip install typing-extensions # 👇️ for Anaconda conda install -c conda-forge typing-extensions # 👇️ for Jupyter Notebook !pip install typing-extensions
安装
typing-extensions包后,尝试按如下方式导入它。
from typing_extensions import Required, TypedDict class Movie(TypedDict, total=False): title: Required[str] year: int
常见错误原因
出现错误的原因有多种:
- 没有
typing-extensions
通过运行安装包
pip install typing-extensions
。 - 在与您正在使用的版本不同的 Python 版本中安装包。
- 全局安装包,而不是在您的虚拟环境中。
- 您的 IDE 运行的 Python 版本不正确。
- 命名您的模块
typing_extensions.py
,这将影响官方模块。 - 声明一个名为
typing_extensions
which 的变量将隐藏导入的变量。
如果错误仍然存在,请获取您的 Python 版本并确保您使用正确的 Python 版本安装包。
python --version
例如,我的 Python 版本是3.10.4
,所以我将
typing-extensions
使用pip3.10 install typing-extensions
.
pip3.10 install typing-extensions # 👇️ if you get permissions error use pip3 (NOT pip3.X) sudo pip3 install typing-extensions
请注意,版本号对应于我正在使用的版本pip
。
pip
如果您的计算机上未设置PATH ,请替换pip
为
python3 -m pip
:
# 👇️ make sure to use your version of Python, e.g. 3.10 python3 -m pip install typing-extensions
如果错误仍然存在,请尝试重新启动您的 IDE 和开发服务器/脚本。
检查包是否安装
您可以
通过运行命令检查是否typing-extensions
安装了软件包pip show typing-extensions
。
# 👇️ check if you have typing-extensions installed pip show typing-extensions # 👇️ if you don't have pip set up in PATH python -m pip show typing-extensions
该pip show typing-extensions
命令将声明该包未安装或显示有关该包的一堆信息,包括该包的安装位置。
确保你的 IDE 使用正确的 Python 版本
如果未安装该包,请确保您的 IDE
使用的是正确版本的 Python。
typing-extensions
包,或者您的 IDE 可能被设置为使用不同的版本。例如,在 VSCode 中,您可以按CTRL + Shift + P
或(在 Mac 上为⌘
+ Shift
+ P
)打开命令面板。
然后在字段中键入“Python 选择解释器”。
然后从下拉菜单中选择正确的 python 版本。
在虚拟环境中安装包
如果您使用的是虚拟环境,请确保您是
typing-extensions
在虚拟环境中而不是全局安装。
如果您还没有虚拟环境,可以尝试创建一个。
# 👇️ use correct version of Python when creating VENV python3 -m venv venv # 👇️ activate on Unix or MacOS source venv/bin/activate # 👇️ activate on Windows (cmd.exe) venv\Scripts\activate.bat # 👇️ activate on Windows (PowerShell) venv\Scripts\Activate.ps1 # 👇️ install typing-extensions in virtual environment pip install typing-extensions
如果该python3 -m venv venv
命令不起作用,请尝试以下 2 个命令:
python -m venv venv
py -m venv venv
您的虚拟环境将使用用于创建它的 Python 版本。
typing_extensions.py
typing_extensions
您也不应该声明一个名为typing-extensions
as 的变量,这也会影响原始模块。
尝试重新安装包
如果错误未解决,请尝试卸载typing-extensions
软件包,然后再安装。
# 👇️ check if you have typing-extensions installed pip show typing-extensions # 👇️ if you don't have pip set up in PATH python -m pip show typing-extensions # 👇️ uninstall typing-extensions pip uninstall typing-extensions # 👇️ if you don't have pip set up in PATH python -m pip uninstall typing-extensions # 👇️ install typing-extensions pip install typing-extensions # 👇️ if you don't have pip set up in PATH python -m pip install typing-extensions
尝试重新启动您的 IDE 和开发服务器/脚本。
您也可以尝试升级软件包的版本typing-extensions
。
pip install typing-extensions --upgrade # 👇️ if you don't have pip set up in PATH python -m pip install typing-extensions --upgrade
typing-extensions
.# Table of Contents
- Install typing-extensions on Windows
- Install typing-extensions on macOS or Linux
- Install typing-extensions in Visual Studio Code
- Install typing-extensions in PyCharm
- Install typing-extensions in Anaconda
- Install typing-extensions in Jupyter Notebook
# Install typing-extensions on Windows
To install the typing-extensions
module on Windows:
- Type CMD in the search bar and open the Command Prompt application.
- Type
pip install typing-extensions
and press Enter.
pip install typing-extensions # 👇️ for Python 3 pip3 install typing-extensions # 👇️ if you don't have pip in your PATH environment variable python -m pip install typing-extensions # 👇️ for Python 3 python3 -m pip install typing-extensions # 👇️ using py alias py -m pip install typing-extensions # 👇️ if you get permissions error pip install typing-extensions --user # 👇️ for Anaconda conda install -c conda-forge typing-extensions
After you install the
typing-extensions package, try
importing it as follows.
from typing_extensions import Required, TypedDict class Movie(TypedDict, total=False): title: Required[str] year: int
If the installation command doesn’t succeed, try running CMD as an
administrator.
If you get the error
‘pip’ is not recognized as an internal or external command,
use the python -m
command when installing typing-extensions
.
python -m pip install typing-extensions python3 -m pip install typing-extensions py -m pip install typing-extensions
Alternatively, you can install the typing-extensions
module in a virtual
environment:
- Open the root directory of your project.
- Press
Shift
and right-click in Explorer.
- Click on “Open PowerShell window here”.
- Run the following commands.
# 👇️ might also be: "python3 -m venv venv" python -m venv venv # 👇️ activate on Windows (PowerShell) venv\Scripts\Activate.ps1 # 👇️ activate on Windows (cmd.exe) venv\Scripts\activate.bat # 👇️ install typing-extensions in virtual environment pip install typing-extensions
If the python -m venv venv
command doesn’t work, try the following 2 commands:
python3 -m venv venv
py -m venv venv
.
If you see an error message that
ps1 cannot be loaded because running scripts is disabled on this system,
run the following command, type “yes” when prompted and rerun the activation
command.
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
typing-extensions
module is installed by using the pip show typing-extensions
command.pip show typing-extensions pip3 show typing-extensions python -m pip show typing-extensions python3 -m pip show typing-extensions
The pip show typing-extensions
command will either state that the package is
not installed or show a bunch of information about the package, including the
location where the package is installed.
# Install typing-extensions on macOS or Linux
To install typing-extensions on macOS or Linux:
- Search for “terminal” and start the application.
- Type
pip install typing-extensions
and press Enter.
pip install typing-extensions # 👇️ for Python 3 pip3 install typing-extensions # 👇️ if you get permissions error sudo pip3 install typing-extensions # 👇️ if you don't have pip in your PATH environment variable python -m pip install typing-extensions # 👇️ for python 3 python3 -m pip install typing-extensions # 👇️ alternative if you get permissions error pip install typing-extensions --user # 👇️ for Anaconda conda install -c conda-forge typing-extensions
After you install the
typing-extensions package, try
importing it as follows.
from typing_extensions import Required, TypedDict class Movie(TypedDict, total=False): title: Required[str] year: int
If you get an error that pip
isn’t found, use the python -m
command.
python -m pip install typing-extensions python3 -m pip install typing-extensions
If you get a permissions error, prefix the command with sudo
.
sudo pip install typing-extensions sudo pip3 install typing-extensions
Alternatively, you can install the typing-extensions
package in a virtual
environment:
- Open your terminal in the root directory of your project.
- Run the following commands.
# 👇️ could also be "python -m venv venv" python3 -m venv venv # 👇️ activate virtual env on macOS or Linux source venv/bin/activate # 👇️ install typing-extensions in virtual environment pip install typing-extensions
Your virtual environment will use the version of Python that was used to create
it.
python3 -m venv venv
command doesn’t work, use python -m venv venv
instead.You can use the pip show
command to verify typing-extensions
has been
installed successfully.
pip show typing-extensions pip3 show typing-extensions python -m pip show typing-extensions python3 -m pip show typing-extensions
The pip show typing-extensions
command will either state that the package is
not installed or show a bunch of information about the package.
# Install typing-extensions in Visual Studio Code
To install typing-extensions in Visual Studio Code:
- Press CTRL + ` (Backtick) on your keyboard to open the terminal.
- Run the
pip install typing-extensions
command to install the
typing-extensions
module.
pip install typing-extensions # 👇️ for Python 3 pip3 install typing-extensions # 👇️ if you get permissions error sudo pip3 install typing-extensions # 👇️ if you don't have pip in your PATH environment variable python -m pip install typing-extensions # 👇️ for python 3 python3 -m pip install typing-extensions # 👇️ using py alias py -m pip install typing-extensions # 👇️ alternative if you get permissions error pip install typing-extensions --user
CTRL+Shift+P
and then typing “View: Toggle Terminal”.After you install the
typing-extensions package, try
importing it as follows.
from typing_extensions import Required, TypedDict class Movie(TypedDict, total=False): title: Required[str] year: int
When installing Python modules in Visual Studio code, make sure that
your IDE is configured to use the correct Python version.
Press CTRL+Shift+P
or (⌘
+ Shift
+ P
on Mac) to open the command
palette.
Then type “Python select interpreter” in the field.
Then select the correct Python version from the dropdown menu.
You can use the python --version
command if you need to get your version of
Python.
python --version python3 --version
You can also try creating a virtual environment if you don’t already have one.
# 👇️ could also be "python -m venv venv" or "py -m venv venv" python3 -m venv venv # 👇️ activate on Unix or MacOS source venv/bin/activate # 👇️ activate on Windows (cmd.exe) venv\Scripts\activate.bat # 👇️ activate on Windows (PowerShell) venv\Scripts\Activate.ps1 # 👇️ install typing-extensions in virtual environment pip install typing-extensions
Your virtual environment will use the version of Python that was used to create
it.
# Install typing-extensions in PyCharm
To install typing-extensions
in PyCharm:
- Press
Alt+F12
on your keyboard to open the terminal. - Run the
pip install typing-extensions
command to install the
typing-extensions
module.
pip install typing-extensions # 👇️ for Python 3 pip3 install typing-extensions # 👇️ if you get permissions error sudo pip3 install typing-extensions # 👇️ if you don't have pip in your PATH environment variable python -m pip install typing-extensions # 👇️ for python 3 python3 -m pip install typing-extensions # 👇️ using py alias py -m pip install typing-extensions # 👇️ alternative if you get permissions error pip install typing-extensions --user
After you install the
typing-extensions package, try
importing it as follows.
from typing_extensions import Required, TypedDict class Movie(TypedDict, total=False): title: Required[str] year: int
Alternatively, you can use the IDE itself to install the module.
- Click on “File” > “Settings” > “Project” > “Python Interpreter”.
- Click on the
+
icon and typetyping-extensions
. - Click on “Install Package”.
Click on “File” > “Settings” > “Project” > “Python Interpreter”.
Then select the correct Python version from the dropdown menu.
You can use the python --version
command if you need to get your version of
Python.
python --version python3 --version
# Install typing-extensions in Anaconda
To install typing-extensions
in Anaconda:
- Open your Anaconda Navigator.
- Click on “Environments” and select your project.
- Type
typing-extensions
in the search bar to the right. - Tick the
typing-extensions
package and click on “Apply”.
After you install the
typing-extensions package, try
importing it as follows.
from typing_extensions import Required, TypedDict class Movie(TypedDict, total=False): title: Required[str] year: int
Alternatively, you can install the typing-extensions
package with a command.
If you are on Windows, search for “Anaconda Prompt” and open the
application.
If you are on macOS or Linux, open your terminal.
Run the following command to install the typing-extensions
package.
# 👇️ using conda conda install -c conda-forge typing-extensions # 👇️ Alternatively use `pip` pip install typing-extensions # 👇️ for Python 3 pip3 install typing-extensions # 👇️ if you get permissions error sudo pip3 install typing-extensions # 👇️ if you don't have pip in your PATH environment variable python -m pip install typing-extensions # 👇️ for python 3 python3 -m pip install typing-extensions # 👇️ using py alias py -m pip install typing-extensions # 👇️ alternative if you get permissions error pip install typing-extensions --user
Click on the
following article
if you need to install a specific version of the package using Anaconda.
# Install typing-extensions in Jupyter Notebook
To install typing-extensions
in Jupyter Notebook:
- Open your terminal and type “jupyter notebook”.
- Click on “New” and then “Terminal” in the browser tab.
- Type
pip install typing-extensions
and press Enter.
# 👇️ using pip pip install typing-extensions # 👇️ for Python 3 pip3 install typing-extensions # 👇️ if you get permissions error sudo pip3 install typing-extensions # 👇️ if you don't have pip in your PATH environment variable python -m pip install typing-extensions # 👇️ for python 3 python3 -m pip install typing-extensions # 👇️ using py alias py -m pip install typing-extensions # 👇️ using conda conda install -c conda-forge typing-extensions # 👇️ alternative if you get permissions error pip install typing-extensions --user
After you install the
typing-extensions package, try
importing it as follows.
from typing_extensions import Required, TypedDict class Movie(TypedDict, total=False): title: Required[str] year: int
Alternatively, you can use the Python ipykernel.
- Open your terminal and type “jupyter notebook”.
-
Click on “New” and then click on “Python 3 (ipykernel)”.
-
Type
!pip install typing-extensions
and click on “Run”.
Note that the pip install
command must be prefixed with an exclamation mark if
you use this approach.
!pip install typing-extensions
键入命令后,单击“运行”以安装模块typing-extensions
。
如果出现权限错误,例如“ [WinError: 5] Access is denied”,请将
--user
选项添加到安装命令中。
!pip install typing-extensions --user
如果错误仍然存在,请尝试
重新启动 Jupyter 内核
并重新运行该命令。