Python 无法导入序列号
Python cannot import serial
有 Python 3.7.6
并且已经安装 pyserial
,
pip install pyserial --user
Requirement already satisfied: pyserial in c:\users\myusername\appdata\local\programs\python\python37\lib\site-packages (3.4)
pip install pyserial
Requirement already satisfied: pyserial in c:\users\myusername\appdata\local\programs\python\python37\lib\site-packages (3.4)
我希望我可以通过 import serial
导入 serial
但失败了。
No module named 'serial'
如下
python3
Python 3.7.6 (tags/v3.7.6:43364a7ae0, Dec 19 2019, 01:54:44) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import serial
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'serial'
我做错了吗?
PS。 import sys; print(sys.path)
的结果是
[
'',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\python37.zip',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\DLLs',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\lib',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\lib\site-packages'
]
PS。 where pip
的结果是
C:\Users\myusername\AppData\Local\Programs\Python\Python37\Scripts\pip.exe
C:\Users\myusername\AppData\Local\Microsoft\WindowsApps\pip.exe
首先,您已经从 Windows 商店安装了 python。然后您决定使用官方安装程序安装 python。结果 您安装了 2 pythons:
- 第一个 (来自 Windows 商店) 位于
C:\Users\%username%\AppData\Local\Microsoft\WindowsApps\python.exe
;
- 第二个 (来自安装程序) - 在
C:\Users\%username%\AppData\Local\Programs\Python\Python37\python.exe
.
每个安装程序都将 python 的路径添加到 PATH 中,这就是问题所在。
当你有两个同名的executable时(python.exe, pip.exe, 等等) 在添加到 PATH 的不同目录中你让 OS 选择要启动的目录。在您的情况下,OS 从 ..WindowsApps\
目录启动 python.exe,从 [=] 启动 pip.exe 13=].
如何解决:
按⊞Win+R然后输入sysdm.cpl
:
切换到选项卡 "Advanced" 并按下按钮 "Environment variables":
在打开的window中你会看到2个table代表当前用户的环境变量(table在上面) 和整个系统 (table 在底部).
您需要 select 有效 "Path" 在每个 table 上并按 "Edit"下table:
- 选择你的战士!你应该选择你想使用的 python 并从列表中删除其他副本的所有路径。为此,您应该打开 windows select 行,其中包含 python 的路径 您不想使用并通过按按钮 "Delete" 删除它们.
有 Python 3.7.6
并且已经安装 pyserial
,
pip install pyserial --user
Requirement already satisfied: pyserial in c:\users\myusername\appdata\local\programs\python\python37\lib\site-packages (3.4)
pip install pyserial
Requirement already satisfied: pyserial in c:\users\myusername\appdata\local\programs\python\python37\lib\site-packages (3.4)
我希望我可以通过 import serial
导入 serial
但失败了。
No module named 'serial'
如下
python3
Python 3.7.6 (tags/v3.7.6:43364a7ae0, Dec 19 2019, 01:54:44) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import serial
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'serial'
我做错了吗?
PS。 import sys; print(sys.path)
的结果是
[
'',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\python37.zip',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\DLLs',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\lib',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0',
'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\lib\site-packages'
]
PS。 where pip
的结果是
C:\Users\myusername\AppData\Local\Programs\Python\Python37\Scripts\pip.exe
C:\Users\myusername\AppData\Local\Microsoft\WindowsApps\pip.exe
首先,您已经从 Windows 商店安装了 python。然后您决定使用官方安装程序安装 python。结果 您安装了 2 pythons:
- 第一个 (来自 Windows 商店) 位于
C:\Users\%username%\AppData\Local\Microsoft\WindowsApps\python.exe
; - 第二个 (来自安装程序) - 在
C:\Users\%username%\AppData\Local\Programs\Python\Python37\python.exe
.
每个安装程序都将 python 的路径添加到 PATH 中,这就是问题所在。
当你有两个同名的executable时(python.exe, pip.exe, 等等) 在添加到 PATH 的不同目录中你让 OS 选择要启动的目录。在您的情况下,OS 从 ..WindowsApps\
目录启动 python.exe,从 [=] 启动 pip.exe 13=].
如何解决:
按⊞Win+R然后输入
sysdm.cpl
:切换到选项卡 "Advanced" 并按下按钮 "Environment variables":
在打开的window中你会看到2个table代表当前用户的环境变量(table在上面) 和整个系统 (table 在底部).
您需要 select 有效 "Path" 在每个 table 上并按 "Edit"下table:
- 选择你的战士!你应该选择你想使用的 python 并从列表中删除其他副本的所有路径。为此,您应该打开 windows select 行,其中包含 python 的路径 您不想使用并通过按按钮 "Delete" 删除它们.