Erreur due à un conflit entre pythons lors de l'utilisation de gurobi

Problème et solution immédiate

Lorsque j'ai essayé d'exécuter un certain fichier python, j'ai eu l'erreur suivante.

$ python [filename].py
Fatal Python error: PyThreadState_Get: no current thread
[1]    1588 abort      python [filename].py

À propos, les conditions étaient les suivantes.

C'était le type d'erreur que j'ai vu pour la première fois, j'ai donc recherché quelle en était la cause, et en un mot, (depuis le début?) Quelque chose s'est mal passé entre le python fourni avec le Mac et le python installé avec brew. Il semble qu'ils sont en conflit les uns avec les autres. Je ne connais pas la raison, mais peut-être que ce n'était pas bon que Brew ait géré la gestion de python.

En disant cela, j'ai désinstallé le python de brew.

brew uninstall python

Voilà la solution. Vous pouvez maintenant l'exécuter en toute sécurité. La cause est probablement que les deux versions de python sont différentes (mac est 2.7.6 et brew est 2.7.9), et le chemin ne fonctionne pas bien à cause de cela, mais je ne comprends pas bien. Cependant, puisque les dernières tâches sont accumulées, je ferai semblant de ne pas le voir.

Si quelqu'un le connaît, j'apprécierais que vous me disiez facilement la cause.

Solution (note supplémentaire)

Selon le développeur de gurobi Greg Glockner, gurobi ne prend en charge que python, qui est installé par défaut sur OSX. En d'autres termes, il n'y a pas d'autre choix que de rétrograder le python de brew, de désinstaller (effacer) ou de dissocier (pause).

Au fait, j'ai décidé de dissocier. Pour le moment, tout simplement

brew unlink python

Arrêtez-vous à et lorsque cela est nécessaire

brew link python

C'est une traduction pour faire revivre, c'est vraiment facile! Ou seulement lors de l'exécution de gurobi en python

import os
os.system('brew unlink python')

(Contenu d'exécution)

os.system('brew link python')

Il peut être plus facile d'écrire comme ça.

Je ne pense pas que cela ait été résolu, mais j'ai été rafraîchi parce que j'ai en quelque sorte trouvé la cause.

Recommended Posts

Erreur due à un conflit entre pythons lors de l'utilisation de gurobi
Comment gérer l'erreur OAuth2 lors de l'utilisation des API Google à partir de Python
Erreur due à UnicodeDecodeError lors de la lecture d'un fichier CSV avec Python [Pour les débutants]
Erreur lors de la tentative d'installation de psycopg2 en Python
Comment quitter lors de l'utilisation de Python dans Terminal (Mac)
Erreur lors de l'exécution de commandes Python sans utiliser l'invite Anaconda
Ce à quoi j'étais accro lors de l'utilisation de Python tornado
J'obtiens une erreur lorsque j'essaie d'élever Python à la série 3 en utilisant pyenv dans Catalina
Publier sur Twitter en utilisant Python
Commencez à Selenium en utilisant python
Erreur lors de la lecture avec python
Précautions lors de l'utilisation de Python avec AtCoder
Choses à garder à l'esprit lors de l'utilisation de cgi avec python.
Liste des bibliothèques à installer lors de l'installation de Python à l'aide de Pyenv
Comment installer Python à l'aide d'Anaconda
Choses à surveiller lors de l'utilisation d'arguments par défaut en Python
Précautions lors de l'utilisation de Pit avec Python
[Python] Mémo d'erreur et de solution lors de l'utilisation de venv avec pyenv + anaconda
Atom: Remarque pour l'erreur d'indentation lors de la copie du script Python dans le shell
[Python] Soyez prudent lorsque vous utilisez print
Impossible de se lier à une erreur d'interface lors de l'utilisation d'Apollo Federation avec gqlgen
"Erreur de valeur: impossible de configurer le gestionnaire'file_output_handler '" lors du démarrage d'un programme python
Méthode de sortie du journal des erreurs lors de l'utilisation du framework Bottle avec GAE / Python
Précautions lors de l'utilisation de phantomjs de python
Lors de l'utilisation de MeCab avec python dans virtualenv
Précautions lors de l'utilisation de six avec Python 2.5
Lors de l'utilisation d'expressions régulières en Python
Comment gérer l'erreur SSL lors de la connexion à S3 avec Python boto
[Python] Que faire lorsqu'une erreur liée à l'authentification SSL est renvoyée
Précautions et gestion des erreurs lors de l'appel de la DLL .NET à partir de python à l'aide de pythonnet
De Python à l'utilisation de MeCab (et CaboCha)
Traitement d'exécution périodique lors de l'utilisation de tkinter [Python3]
Introduction à la simulation d'événements discrets à l'aide de Python # 1
Placement de Fabicon (lors de l'utilisation de Python, Flask, Heroku)
[python, multitraitement] Comportement des exceptions lors de l'utilisation du multitraitement
Connectez-vous à Slack à l'aide de requêtes en Python
SyntaxError due à un espace pleine largeur: syntaxe non valide
Essayez d'utiliser Excel en utilisant Python (Xlwings)
Vider les tables BigQuery dans GCS à l'aide de Python
Introduction à la simulation d'événements discrets à l'aide de Python # 2
Avertissement lors de l'utilisation de TensorFlow sur Mac
Lorsque Python "Erreur de syntaxe: caractère non ASCII ~" apparaît
À propos du point où python 3.x est resté bloqué en raison d'une erreur due à caching_sha2_password
[python] Que faire si vous obtenez une erreur avec send_keys dans le chrome sans tête
Pyenv est-il cassé? Python 3.x fait référence au module 2.x au démarrage en raison d'une erreur PYTHONPATH
Lorsque vous utilisez PyQtGraph avec Python Pyside, faites attention à l'ordre d'importation
Trois choses auxquelles j'étais accro lors de l'utilisation de Python et MySQL avec Docker
La synchronisation de la sortie est incorrecte lorsque la sortie standard (erreur) est convertie en fichier en Python
Points à garder à l'esprit lors de l'utilisation de Python pour ceux qui utilisent MATLAB
Que faire si vous obtenez une erreur lors de l'installation de python avec pyenv
[Python] Choses à vérifier lorsqu'une erreur de décodage Unicode apparaît dans Django
Erreur lors de l'installation d'un module avec Python pip
Comment démarrer Python (Flask) au démarrage d'EC2
Méthode #Monte Carlo pour trouver le rapport de circonférence en utilisant Python
Procédure pour utiliser l'API WEB de TeamGant (en utilisant python)
Présentation de 4 façons de surveiller les applications Python à l'aide de Prometheus
[Introduction à Udemy Python3 + Application] 38. Lors du jugement Aucun
[Python] Précautions lors de l'affectation de valeurs à des tableaux multidimensionnels