9 python python-import python-3.x python-3.7 python-dataclasses
今天我从 apt-get 安装了 python 3.7 来试用新的 dataclasses 模块。我单独安装它是因为 python3.6 不能升级到 3.7。
当我输入: 时python3.7 --version,它给了我:>>> Python 3.7.0a2作为我当前的版本。
问题是我似乎无法导入数据类。
我的进口声明是:from dataclasses import dataclass按照这里的指示
这是它给我的错误信息:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'dataclasses'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
from apport.fileutils import likely_packaged, get_recent_crashes
File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
from apport.report import Report
File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
import apport.fileutils
File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
from apport.packaging_impl import impl as packaging
File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 24, in <module>
import apt
File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
Original exception was:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'dataclasses'
Run Code Online (Sandbox Code Playgroud)
我什至尝试使用 pip3: 安装 dataclasses 模块pip3 install dataclasses。不确定这是否有必要。
关于可能是什么问题的任何建议?
[编辑] 刚用 python3.6 控制台试了一下,效果很好……很奇怪。
正如@wim 所建议的python3.7 -m venv venv_dir
该命令将:
-m标志告诉解释器将下一个参数作为脚本运行venv是一个模块,并且由于该-m标志,它将作为脚本运行venv_dir将 作为参数提供给venv模块,该模块将使用该参数在以下位置创建虚拟环境目录:现在运行此命令后,您将拥有一个很好的沙箱,用于处理/测试数据类模块。
source venv_dir/bin/activate要激活此虚拟环境,请务必在开始之前运行。此命令将运行脚本 atvenv_dir/bin/activate来设置必要的环境变量和其他内容deactivate在激活后运行即可