当前位置: 首页>>技术问答>>正文


Python:没有名为datetime的模块?

,

问题描述

操作系统:Ubuntu 14.04 LTS

Python:2.7.6

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

import datetime as dt
ImportError: No module named datetime

据我所知,没有任何改变,我的Python安装是最新的。它只是放弃了昨天的工作。我当然感谢一种诊断和解决这个问题的好方法!

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

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

TheSchwa,我尝试了你的建议并得到了与上面相同的错误信息。

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

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

最佳解决思路

在14.10更新之后,这恰好发生在我身上,这似乎是因为我的虚拟环境中有/usr/bin/python2.7的旧副本 – 与新二进制文件不同 – 不包括datetime 内置,因此当它们无法在磁盘上找到它时会出现错误。新的解释器似乎导入它没有任何文件I /O(尝试在strace下运行它来检查)。

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

$ cp /usr/bin/python2.7 $(which python2.7)

次佳解决思路

如果你在升级后尝试使用letsencrypt,这个解决方案对我有用letsencrypt forums – Can’t use auto import: error: no module named io/2345/3

我只是删除了这个:

rm ~/.local/share/letsencrypt -R

第三种解决思路

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

cd $VIRTUAL_ENV
virtualenv .

第四种思路

我有同样的问题,最后决定它必须是AWS CLI,因为我注意到它有自己的python目录。所以我卸载了AWS CLI并重新安装它并解决了这个问题:

sudo pip uninstall awscli

sudo pip install awscli

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1621.html,未经允许,请勿转载。