В один прекрасный день я проснулся, и моя окружающая среда разорвалась, что было очень странно, потому что мой пип, конда, тензор-флоу и numpy сработали накануне.
Я начал день с того, что случайно установил неправильный пакет: pip install telegram-bot
Collecting telegram-bot
Using cached https://files.pythonhosted.org/packages/0c/89/b5f6cdebf62f1b37dfc0fd53fee0f92760531a51d834e5238b3110429e93/telegram-bot-0.1.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/fy/xjkb7k0d3q16fqp1578b63f00000gn/T/pip-build-muqgbeev/telegram-bot/setup.py", line 12, in <module>
import telegram
File "/private/var/folders/fy/xjkb7k0d3q16fqp1578b63f00000gn/T/pip-build-muqgbeev/telegram-bot/telegram/__init__.py", line 15, in <module>
from telegram import Bot, ChatActions
ImportError: cannot import name 'Bot'
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/fy/xjkb7k0d3q16fqp1578b63f00000gn/T/pip-build-muqgbeev/telegram-bot/
На данный момент список Конда не удалось загадочно:
$conda list
# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<
Traceback (most recent call last):
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/exceptions.py", line 1001, in __call__
return func(*args, **kwargs)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/cli/main.py", line 84, in _main
exit_code = do_call(args, p)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/cli/conda_argparse.py", line 82, in do_call
exit_code = getattr(module, func_name)(args, parser)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/cli/main_list.py", line 142, in execute
show_channel_urls=context.show_channel_urls)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/cli/main_list.py", line 80, in print_packages
show_channel_urls=show_channel_urls)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/cli/main_list.py", line 45, in list_packages
installed = sorted(PrefixData(prefix, pip_interop_enabled=True).iter_records(),
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/core/prefix_data.py", line 116, in iter_records
return itervalues(self._prefix_records)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/core/prefix_data.py", line 145, in _prefix_records
return self.__prefix_records or self.load() or self.__prefix_records
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/core/prefix_data.py", line 69, in load
self._load_site_packages()
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/core/prefix_data.py", line 258, in _load_site_packages
python_record = read_python_record(self.prefix_path, af, python_pkg_record.version)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/gateways/disk/read.py", line 245, in read_python_record
pydist = PythonDistribution.init(prefix_path, anchor_file, python_version)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/common/pkg_formats/python.py", line 78, in init
return PythonInstalledDistribution(prefix_path, anchor_file, python_version)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/common/pkg_formats/python.py", line 382, in __init__
super(PythonInstalledDistribution, self).__init__(anchor_full_path, python_version)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/common/pkg_formats/python.py", line 106, in __init__
self._check_files()
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/conda/common/pkg_formats/python.py", line 116, in _check_files
assert isfile(fpath)
AssertionError
`$ /Users/sunyitao/anaconda3/bin/conda list`
environment variables:
CIO_TEST=<not set>
CONDA_ROOT=/Users/sunyitao/anaconda3
PATH=/Users/sunyitao/google-cloud-sdk/bin:/Users/sunyitao/anaconda3/bin:/us
r/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/share/dotnet:~/.d
otnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Comman
ds:/Applications/Xamarin Workbooks.app/Contents/SharedSupport/path-bin
PYTHONPATH=::/Users/sunyitao/slim
REQUESTS_CA_BUNDLE=<not set>
SSL_CERT_FILE=<not set>
active environment : None
user config file : /Users/sunyitao/.condarc
populated config files : /Users/sunyitao/.condarc
conda version : 4.6.2
conda-build version : 3.17.7
python version : 3.6.5.final.0
base environment : /Users/sunyitao/anaconda3 (writable)
channel URLs : https://conda.anaconda.org/intel/osx-64
https://conda.anaconda.org/intel/noarch
https://repo.anaconda.com/pkgs/main/osx-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/free/osx-64
https://repo.anaconda.com/pkgs/free/noarch
https://repo.anaconda.com/pkgs/r/osx-64
https://repo.anaconda.com/pkgs/r/noarch
package cache : /Users/sunyitao/anaconda3/pkgs
/Users/sunyitao/.conda/pkgs
envs directories : /Users/sunyitao/anaconda3/envs
/Users/sunyitao/.conda/envs
platform : osx-64
user-agent : conda/4.6.2 requests/2.20.0 CPython/3.6.5 Darwin/18.2.0 OSX/10.14.2
UID:GID : 501:20
netrc file : None
offline mode : False
Так что я погуглил и сделал pip install -U setuptools
и conda update conda
без ошибок, но установка telegram-bot все же не удалась.
Но я действительно хотел установить pip install python-telegram-bot
что удалось.
Поэтому я запустил это, чтобы проверить, полностью ли удален первый пакет:
$pip uninstall telegram-bot
Cannot uninstall requirement telegram-bot, not installed
Запустил список conda снова, но та же ошибка.
Я перешел и сделал кое-что с тензорным потоком, работающим нормально. Через некоторое время я устанавливаю lightgbm с conda.
Downloading and Extracting Packages
lightgbm-2.2.1 | 617 KB | ##################################################################################################### | 100%
numpy-base-1.15.4 | 6.0 MB | ##################################################################################################### | 100%
llvm-openmp-4.0.1 | 454 KB | ##################################################################################################### | 100%
Теперь, когда я запускаю import tensorflow as tf
я получаю это:
Using TensorFlow backend.
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/tensor_util.py", line 32, in <module>
from tensorflow.python.framework import fast_tensor_util
File "__init__.pxd", line 872, in init tensorflow.python.framework.fast_tensor_util
ValueError: numpy.ufunc has the wrong size, try recompiling. Expected 192, got 216
Изначально у меня был numpy 1.16 от pip и еще одна версия numpy от anaconda. Поэтому я удалил обе версии с помощью pip и затем conda uninstall numpy --force
чтобы он не удалял все мои пакеты, которые зависели от numpy. Я запустил conda install numpy
что удалось.
Но теперь, когда я импортирую NumPy я получаю:
ModuleNotFoundError: No module named 'numpy'
Проверил ли здравомыслие:
$which pip
/Users/sunyitao/anaconda3/bin/pip
$which conda
/Users/sunyitao/anaconda3/bin/conda
$which python
/Users/sunyitao/anaconda3/bin/python
проверка пипса:
$pip check
Exception:
Traceback (most recent call last):
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 2797, in _dep_map
return self.__dep_map
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 2608, in __getattr__
raise AttributeError(attr)
AttributeError: _DistInfoDistribution__dep_map
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 2788, in _parsed_pkg_info
return self._pkg_info
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 2608, in __getattr__
raise AttributeError(attr)
AttributeError: _pkg_info
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/basecommand.py", line 215, in main
status = self.run(options, args)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/commands/check.py", line 20, in run
missing_reqs_dict, incompatible_reqs_dict = check_requirements(dists)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/operations/check.py", line 10, in check_requirements
missing_reqs = list(get_missing_reqs(dist, installed_dists))
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/operations/check.py", line 30, in get_missing_reqs
for requirement in dist.requires():
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 2552, in requires
dm = self._dep_map
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 2799, in _dep_map
self.__dep_map = self._compute_dependencies()
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 2808, in _compute_dependencies
for req in self._parsed_pkg_info.get_all('Requires-Dist') or []:
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 2790, in _parsed_pkg_info
metadata = self.get_metadata(self.PKG_INFO)
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 1468, in get_metadata
value = self._get(self._fn(self.egg_info, name))
File "/Users/sunyitao/anaconda3/lib/python3.6/site-packages/pip-9.0.3-py3.6.egg/pip/_vendor/pkg_resources/__init__.py", line 1577, in _get
with open(path, 'rb') as stream:
FileNotFoundError: [Errno 2] No such file or directory: '/Users/sunyitao/anaconda3/lib/python3.6/site-packages/parso-0.3.1.dist-info/METADATA'
You are using pip version 9.0.3, however version 19.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Я обдумываю переустановку всего сейчас, но это действительно последний вариант, который может занять весь день.
Изменить: я исправил проблему NumPy запустив
conda config --add channels conda-forge
conda install numpy --force-reinstall
Теперь тензорный поток и numpy снова работают, но проверка pip и список conda по-прежнему не работают. Когда я активирую другой пункт проверки окружения, список conda будет работать, так что, похоже, проблема с моей базовой средой.