Когда я обновляю свой Ubuntu до 14.04 с 12.04, на этот раз я получаю эту ошибку:
ImportError: No module named datetime
Когда я обновляю свой Ubuntu до 14.04 с 12.04, на этот раз я получаю эту ошибку:
ImportError: No module named datetime
Это случилось со мной, когда я создал virtualenv, а затем обновился с 12.04 по 14.04.
Мне пришлось удалить мой virtualenv и воссоздать его, и после этого все снова работало.
Просто запустите эту команду. Он работал как шарм!
$ cp /usr/bin/python2.7 $(which python2.7)
Это произошло со мной после обновления 14.10, и похоже, потому что у моих виртуальных сред есть старые копии /usr/bin/python2.7
, которые - в отличие от нового двоичного файла - не включают встроенный datetime
, и поэтому получите когда они не могут найти его на диске в любом месте. Кажется, что новый интерпретатор импортирует его без ввода/вывода файлов (попробуйте запустить его под контролем strace).
Я попытался переустановить его этими шагами.
1. remove the old version of venv
2. virtualenv venv
3. .venv/activate/bin
4. pip install -r requirements/ requirements.txt
И он отлично работает. Спасибо, ребята:)
просто повторите инициализацию virtualenv:
cd <virtualenv-dir>
virtualenv .
Если случайно вы столкнетесь с этой ошибкой при попытке продлить сертификат LetsEncrypt (как и я), я нашел решение здесь:
https://askubuntu.com/a/850669/668101
Удалите эту папку и перезапустите LetsEncrypt, и она воссоздает все соответствующие файлы и избежит ошибок из этого потока.
rm ~/.local/share/letsencrypt -R
Если вы используете virtualenv
, обновление может решить эту проблему
virtualenv /path/to/old/virtualenv/
Try...
>>> import sys
>>> sys.path
[... '/usr/local/lib/python2.7/lib-dynload',...]
если lib-dynload не включен в sys.path, вы не могли import datetime
проверить это!
очистить виртуальный env, считать, что VIRTUAL - это имя виртуальной среды
virtualenv --clear ВИРТУАЛЬНЫЙ
Теперь активируйте его и установите с require.txt
источник VIRTUAL/bin/активировать pip install -r requirements.txt
Я обновил с Ubuntu 12.04 до 14.04 и этот ответ помог мне решить эту проблему:
Установка зависимостей:
$ sudo apt-get build-dep python-imaging
Создание символической ссылки, предложенной mrudult:
$ sudo ln -s -T /usr/include/freetype2/ /usr/include/freetype
Установите подушку как обычно:
$ pip install Pillow
То же самое случилось со мной при обновлении Ubuntu с 14.04 до 15.10.
Я решил это, обновив pip, а затем удалив и заново создав виртуальный env:
$ easy_install --upgrade pip
$ rmvirtualenv <my_virtual_env>
$ mkvirtualenv <my_virtual_env>
(я использую virtualenvwrapper)
Если вы сталкиваетесь с проблемой импорта данных datetime с помощью IntelliJ PyCharm или Idea, а с Console/Terminal - отлично, вы должны просто дублировать/воссоздавать запущенные конфигурации.