当命令lin执行时,导入datetime会在Python脚本中引发ModuleNotFound“math”

2024-09-20 17:47:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我用的是Ubuntu 17.10。在开发一个简单的脚本时,我添加了一行

from datetime import datetime

并尝试使用以下命令行运行脚本:

^{pr2}$

但它显示:

Traceback (most recent call last):
  File "complete.py", line 4, in <module>
    from datetime import datetime
  File "/usr/lib/python3.6/datetime.py", line 8, in <module>
    import math as _math
ModuleNotFoundError: No module named 'math'
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 12, in <module>
    import subprocess, tempfile, os.path, re, pwd, grp, os, time
  File "/usr/lib/python3.6/subprocess.py", line 136, in <module>
    import _posixsubprocess
ModuleNotFoundError: No module named '_posixsubprocess'

Original exception was:
Traceback (most recent call last):
  File "complete.py", line 4, in <module>
    from datetime import datetime
  File "/usr/lib/python3.6/datetime.py", line 8, in <module>
    import math as _math
ModuleNotFoundError: No module named 'math'

如果我在pycharmide中运行脚本,就没有错误。我已经通过运行

python -V

它显示:

Python 3.6.3 :: Anaconda, Inc.

我错过了什么?在


Tags: infrompyimport脚本datetimelibusr
1条回答
网友
1楼 · 发布于 2024-09-20 17:47:26

我已经把我的操作系统升级到了Ubuntu18.04(Bionic Beaver),如果你使用其他版本,以下步骤仍然有效,但是值得一提的是,我已经不再是最初问题中所说的17.10版本了。在

结果表明,即使python -V显示了Python的一些东西,python命令仍然指向python2.7。我发现在安装django并尝试运行python3 -m django version来检查版本是否正确之后,它显示了一条消息,说明没有安装django。在

我所做的是:conda install -f python,以确保我有一个更新的python版本。Python文件存储在/home/<user>/anaconda/目录中。我检查了/bin目录,其中有一些python文件和一些到python3.6的链接

用and命令检查了/usr/bindir,结果发现:python -> python 2.6(!)。所以我的问题是,即使运行python-V,它显示的是3.6.3,它实际上运行的是2.6。不知道怎么做。接下来我做了什么:

sudo mv /usr/bin/python /usr/bin/python.bk

最后呢

sudo ln -s /home/<user>/anaconda/bin/python /usr/bin/python

相关问题 更多 >

    热门问题