#python #python-3.x #windows #numpy
#python #python-3.x #Windows #numpy
Вопрос:
Это ошибка, которую я получаю, и, насколько я могу судить, в ссылке на ошибку нет ничего полезного, чтобы исправить это.
Ошибка выполнения: текущая установка Numpy (
'...\venv\lib\site-packages\numpy\__init__.py'
) не проходит проверку работоспособности из-за ошибки в среде выполнения Windows.
Смотрите Эту проблему для получения дополнительной информации: https://developercommunity.visualstudio.com/content/problem/1207405/fmod-after-an-update-to-windows-2004-is-causing-a.html
Я пробовал несколько версий Python (3.8.6 и 3.9.0), а также numpy и pandas. В настоящее время я использую PyCharm для всего этого.
Ответ №1:
Эта ошибка возникает при использовании python3.9 и numpy1.19.4, поэтому удаление numpy1.19.4 и установка 1.19.3 будут работать.
Редактировать
По состоянию на 5 января 2021 года версия numpy 1.19.5
отсутствует и, похоже, решает проблему.
Комментарии:
1. Как понизить его с помощью pip?
2. @ShaidaMuhammad pip установить numpy == 1.19.3
3. Черт
numpy
возьми, протестируйте, пожалуйста, перед выпуском. Это не бета-версия4. Я использую Python 3.7.5 и тоже получил эту ошибку (numpy 1.19.4). Понижение numpy до 1.19.3 действительно предотвращает возникновение ошибки.
5. @NoName: Мы провели тестирование, и ошибка находится в самой Windows. 1.19.3 была попыткой исправить это с помощью другой версии OpenBLAS, которая решает проблему, но эта версия некорректно работала в Linux.
Ответ №2:
Я использую Python 3.7, в любом случае, мне помогло то же решение, предложенное здесь.
pip install numpy==1.19.3
На самом деле ссылка сообщила https://developercommunity.visualstudio.com/content/problem/1207405/fmod-after-an-update-to-windows-2004-is-causing-a.html показывает заданное решение. Похоже, это ошибка в Visual Studio, которая остается нерешенной до сих пор.
Комментарии:
1. Технически, это ошибка в UCRT (универсальной распространяемой среде выполнения C / C ), а не в самой Visual Studio.
Ответ №3:
Просто установите numpy==1.19.3
, я использую python 3.9
Ответ №4:
Согласно обсуждению по предоставленной вами ссылке, разработчик numpy ответил:
NumPy выпустила исправление 1.19.3 для решения этой проблемы. Исправление сломало что-то еще в Linux, поэтому нам пришлось отменить исправление в версии 1.19.4, но вы все равно можете установить 1.19.3 через pip install numpy == 1.19.3.
Итак, если вам нужны требования, которые работают как для Linux, так и для Windows, вам нужно использовать PEP508:
numpy==1.19.3; platform_system == "Windows"
numpy>=1.19.4; platform_system == "linux"
Комментарии:
1. Вероятно, можно сделать
numpy>=1.19.4
в Linux2. Вместо этого вы должны использовать верхний регистр «Linux»:
numpy>=1.19.4; platform_system == "Linux"
3. И вы можете проверить platform_system следующим кодом:
import platform;platform.system()
смотрите: python.org/dev/peps/pep-0508/#environment-markers
Ответ №5:
Это ошибка numpy 1.19.4
, которая не работает со всеми версиями python. Используйте предыдущую версию для решения проблемы, поэтому с помощью терминала:
pip install numpy==1.19.3
Комментарии:
1. 1.9.3 не удается установить в моей Windows
2. @JariTurkia Это 1.19.3.
Ответ №6:
Откат к numpy 1.19.3 работал для меня на python 3.8.6
Ответ №7:
Обходной путь приведен в ссылке, упомянутой в вопросе.
Разработчик mattip упоминает ниже в предложенном им обходном пути:
- Удалите numpy.(Скорее всего, это 1.19.4)
- pip install numpy == 1.19.3
Это сработало для меня.
Моя конфигурация: OS-Win10, дистрибутив Anaconda, python = 3.7
Ответ №8:
Почему никто не опубликовал разницу между 1.19.3 и 1.19.4.
Проблемный код инициализации numpy:
def _win_os_check():
"""
Quick Sanity check for Windows OS: look for fmod bug issue 16744.
"""
try:
a = arange(13 * 13, dtype= float64).reshape(13, 13)
a = a % 17 # calls fmod
linalg.eig(a)
except Exception:
msg = ("The current Numpy installation ({!r}) fails to "
"pass a sanity check due to a bug in the windows runtime. "
"See this issue for more information: "
"https://developercommunity.visualstudio.com/content/problem/1207405/fmod-after-an-update-to-windows-2004-is-causing-a.html")
raise RuntimeError(msg.format(__file__)) from None
if sys.platform == "win32" and sys.maxsize > 2**32:
_win_os_check()
del _win_os_check
Этот раздел кода не существует в 1.19.3; это единственное отличие.
Комментарии:
1. Есть еще одно, более важное различие между колесами 1.19.3 и 1.19.4, установленными pip — версией OpenBLAS, с которой они построены. Если вы удалите этот код из numpy 1.19.4, то вместо numpy not importing вы получите numpy, который выдает неправильные результаты и / или случайно вылетает. Правильное исправление — переключиться на 1.19.3, который содержит «безопасную» сборку OpenBLAS.
Ответ №9:
Мне пришлось выполнить следующие шаги, чтобы исправить эту ошибку, как и все остальные, предложенные выше.
Сведения о моей среде: 64-разрядная версия Windows 10 с установленным Python 3.9.0. Я установил pip 20.3.1
pip uninstall numpy
pip install numpy==1.19.3
Я публикую свой вывод командной строки powershell для вашей справки (может быть кому-то полезен).
PS C:UsersXXXX > pip удалить numpy
Найдена существующая установка: numpy 1.19.4
Удаление numpy-1.19.4:
Удалил бы:
c:python39libsite-packagesnumpy-1.19.4.dist-info*
c:python39libsite-packagesnumpy*
c:python39scriptsf2py.exe
Продолжить (y / n)? y
Успешно удален numpy-1.19.4
PS C:UsersXXXX > pip установить numpy==1.19.3
Сбор numpy == 1.19.3
Загрузка numpy-1.19.3-cp39-cp39-win_amd64.whl (13.3 MB)
|████████████████████████████████| 13.3 MB 6.4 MB/s
Установка собранных пакетов: numpy
Успешно установлен numpy-1.19.3