Python:没有名为 datetime 的模块?

Joe*_*Joe 58 python

操作系统:Ubuntu 14.04 LTS

蟒蛇:2.7.6

我安装的 Gourmet Recipe Manager 突然停止加载。当我在终端窗口中运行它时,我在回溯结束时得到以下信息:

import datetime as dt
ImportError: No module named datetime
Run Code Online (Sandbox Code Playgroud)

据我所知,没有任何变化,我的 Python 安装是最新的。它只是昨天停止工作。我当然会很感激诊断和解决这个问题的好方法!

更新:感谢所有回复的人!

蒂姆,如果我在错误的地方问了这个问题,我很抱歉。请简单地按照 Ubuntu 网站上的链接将其归结为成为一个新人。

TheSchwa,我尝试了您的建议并收到与上述相同的错误消息。

muru,该软件包似乎已安装,但我不知道它是否已正确安装/配置。我怎么知道?

对于所有的问题,我很抱歉,但我是 RedHat 的老家伙,已经离开 Linux 有一段时间了。所有 apt/dpkg 的东西对我来说都是新的。

Bra*_*des 89

这只是在 14.10 更新后发生在我身上,这似乎是因为我的虚拟环境有旧的副本/usr/bin/python2.7——不像新的二进制文件——不包括datetime内置的,所以当他们在磁盘上的任何地方都找不到它时会出错. 新的解释器似乎在没有任何文件 I/O 的情况下导入它(尝试运行它strace来检查)。

我通过激活它并运行来修复每个虚拟环境:

$ cp /usr/bin/python2.7 $(which python2.7)
Run Code Online (Sandbox Code Playgroud)

  • 谢谢,但为什么这是必要的?在升级时破坏 python 是一件令人讨厌的事情。 (6认同)
  • 我在此页面上尝试了其他答案,但没有奏效,但这个答案奏效了。 (2认同)
  • 得到 `cp: '/usr/bin/python2.7' 和 '/usr/bin/python2.7' are the same file` 但错误仍然存​​在 (2认同)

sur*_*hvv 31

您可以通过以下方式重新初始化 virtualenv:

cd $VIRTUAL_ENV
virtualenv .
Run Code Online (Sandbox Code Playgroud)

  • 这个答案似乎比 Brandon Rhodes 的答案更好。 (4认同)
  • 请注意,它应该是 `virtualenv .` 而不是 `virtualenv ,` (2认同)

小智 30

如果您在升级后尝试使用 letencrypt,此解决方案对我有用 letencrypt 论坛 - 无法使用自动导入:错误:没有名为 io/2345/3 的模块

我只需要删除这个:

rm ~/.local/share/letsencrypt -R
Run Code Online (Sandbox Code Playgroud)

  • 我还必须使用 `rm -rf /opt/eff.org` 来让它工作 (10认同)
  • 删除 /opt/eff.org 修复它 (7认同)

小智 0

因为我发现 14.04 中有一些变化,所以你需要从 root 执行此操作:

仅适用于日期时间:


ln -s /usr/lib/python2.7/lib-dynload/datetime.x86_64-linux-gnu.so                      /usr/lib/python2.7/lib-dynload/datetime.so
Run Code Online (Sandbox Code Playgroud)

对于所有模块:


ln -s /usr/lib/python2.7/lib-dynload/audioop.x86_64-linux-gnu.so                       /usr/lib/python2.7/lib-dynload/audioop.so
ln -s /usr/lib/python2.7/lib-dynload/_bsddb.x86_64-linux-gnu.so                        /usr/lib/python2.7/lib-dynload/_bsddb.so
ln -s /usr/lib/python2.7/lib-dynload/bz2.x86_64-linux-gnu.so                           /usr/lib/python2.7/lib-dynload/bz2.so
ln -s /usr/lib/python2.7/lib-dynload/_codecs_cn.x86_64-linux-gnu.so                    /usr/lib/python2.7/lib-dynload/_codecs_cn.so
ln -s /usr/lib/python2.7/lib-dynload/_codecs_hk.x86_64-linux-gnu.so                    /usr/lib/python2.7/lib-dynload/_codecs_hk.so
ln -s /usr/lib/python2.7/lib-dynload/_codecs_iso2022.x86_64-linux-gnu.so               /usr/lib/python2.7/lib-dynload/_codecs_iso2022.so
ln -s /usr/lib/python2.7/lib-dynload/_codecs_jp.x86_64-linux-gnu.so                    /usr/lib/python2.7/lib-dynload/_codecs_jp.so
ln -s /usr/lib/python2.7/lib-dynload/_codecs_kr.x86_64-linux-gnu.so                    /usr/lib/python2.7/lib-dynload/_codecs_kr.so
ln -s /usr/lib/python2.7/lib-dynload/_codecs_tw.x86_64-linux-gnu.so                    /usr/lib/python2.7/lib-dynload/_codecs_tw.so
ln -s /usr/lib/python2.7/lib-dynload/crypt.x86_64-linux-gnu.so                         /usr/lib/python2.7/lib-dynload/crypt.so
ln -s /usr/lib/python2.7/lib-dynload/_csv.x86_64-linux-gnu.so                          /usr/lib/python2.7/lib-dynload/_csv.so
ln -s /usr/lib/python2.7/lib-dynload/_ctypes_test.x86_64-linux-gnu.so                  /usr/lib/python2.7/lib-dynload/_ctypes_test.so
ln -s /usr/lib/python2.7/lib-dynload/_ctypes.x86_64-linux-gnu.so                       /usr/lib/python2.7/lib-dynload/_ctypes.so
ln -s /usr/lib/python2.7/lib-dynload/_curses_panel.x86_64-linux-gnu.so                 /usr/lib/python2.7/lib-dynload/_curses_panel.so
ln -s /usr/lib/python2.7/lib-dynload/_curses.x86_64-linux-gnu.so                       /usr/lib/python2.7/lib-dynload/_curses.so
ln -s /usr/lib/python2.7/lib-dynload/datetime.x86_64-linux-gnu.so                      /usr/lib/python2.7/lib-dynload/datetime.so
ln -s /usr/lib/python2.7/lib-dynload/dbm.x86_64-linux-gnu.so                           /usr/lib/python2.7/lib-dynload/dbm.so
ln -s /usr/lib/python2.7/lib-dynload/_elementtree.x86_64-linux-gnu.so                  /usr/lib/python2.7/lib-dynload/_elementtree.so
ln -s /usr/lib/python2.7/lib-dynload/fpectl.x86_64-linux-gnu.so                        /usr/lib/python2.7/lib-dynload/fpectl.so
ln -s /usr/lib/python2.7/lib-dynload/future_builtins.x86_64-linux-gnu.so               /usr/lib/python2.7/lib-dynload/future_builtins.so
ln -s /usr/lib/python2.7/lib-dynload/_hashlib.x86_64-linux-gnu.so                      /usr/lib/python2.7/lib-dynload/_hashlib.so
ln -s /usr/lib/python2.7/lib-dynload/_hotshot.x86_64-linux-gnu.so                      /usr/lib/python2.7/lib-dynload/_hotshot.so
ln -s /usr/lib/python2.7/lib-dynload/_json.x86_64-linux-gnu.so                         /usr/lib/python2.7/lib-dynload/_json.so
ln -s /usr/lib/python2.7/lib-dynload/linuxaudiodev.x86_64-linux-gnu.so                 /usr/lib/python2.7/lib-dynload/linuxaudiodev.so
ln -s /usr/lib/python2.7/lib-dynload/_lsprof.x86_64-linux-gnu.so                       /usr/lib/python2.7/lib-dynload/_lsprof.so
ln -s /usr/lib/python2.7/lib-dynload/mmap.x86_64-linux-gnu.so                          /usr/lib/python2.7/lib-dynload/mmap.so
ln -s /usr/lib/python2.7/lib-dynload/_multibytecodec.x86_64-linux-gnu.so               /usr/lib/python2.7/lib-dynload/_multibytecodec.so
ln -s /usr/lib/python2.7/lib-dynload/_multiprocessing.x86_64-linux-gnu.so              /usr/lib/python2.7/lib-dynload/_multiprocessing.so
ln -s /usr/lib/python2.7/lib-dynload/nis.x86_64-linux-gnu.so                           /usr/lib/python2.7/lib-dynload/nis.so
ln -s /usr/lib/python2.7/lib-dynload/ossaudiodev.x86_64-linux-gnu.so                   /usr/lib/python2.7/lib-dynload/ossaudiodev.so
ln -s /usr/lib/python2.7/lib-dynload/parser.x86_64-linux-gnu.so                        /usr/lib/python2.7/lib-dynload/parser.so
ln -s /usr/lib/python2.7/lib-dynload/pyexpat.x86_64-linux-gnu.so                       /usr/lib/python2.7/lib-dynload/pyexpat.so
ln -s /usr/lib/python2.7/lib-dynload/readline.x86_64-linux-gnu.so                      /usr/lib/python2.7/lib-dynload/readline.so
ln -s /usr/lib/python2.7/lib-dynload/resource.x86_64-linux-gnu.so                      /usr/lib/python2.7/lib-dynload/resource.so
ln -s /usr/lib/python2.7/lib-dynload/_sqlite3.x86_64-linux-gnu.so                      /usr/lib/python2.7/lib-dynload/_sqlite3.so
ln -s /usr/lib/python2.7/lib-dynload/_ssl.x86_64-linux-gnu.so                          /usr/lib/python2.7/lib-dynload/_ssl.so
ln -s /usr/lib/python2.7/lib-dynload/termios.x86_64-linux-gnu.so                       /usr/lib/python2.7/lib-dynload/termios.so
ln -s /usr/lib/python2.7/lib-dynload/_testcapi.x86_64-linux-gnu.so                     /usr/lib/python2.7/lib-dynload/_testcapi.so
Run Code Online (Sandbox Code Playgroud)

另外,如果您使用虚拟环境副本

cp $(which python2.7) /opt/graphite/bin/python
Run Code Online (Sandbox Code Playgroud)

到你的环境。

  • 我升级到 14.04,不需要做任何符号链接。您能否提供任何证据证明像这样弄乱系统库是必要且无法避免的? (3认同)