[PYTHON] Créez un environnement avec pyenv, pyenv-virtualenv, jupyter sur OS X El Capitan

Une histoire sur la création d'un environnement en mettant pyenv, pyenv-virtualenv et jupyter dans Mac OS X El Capitan.

Install pyenv, pyenv-virtualenv

$ brew install pyenv pyenv-virtualenv

Install python and create virtual environment

$ PYTHON_CONFIGURE_OPTS="--enable-unicode=ucs2 --enable-framework=$(pyenv root)/versions/2.7.11" pyenv install 2.7.11
$ pyenv virtualenv 2.7.11 tech

Si vous n'ajoutez pas PYTHON_CONFIGURE_OPTS =" --enable-unicode = ucs2 ", vous obtiendrez une erreur plus tard dans jupyter notebook ↓ Référence: http://qiita.com/sigmalogneko/items/b5c15f5229387bbfd53a

(test) foo-mbp:test foo$ jupyter notebook
Traceback (most recent call last):
  File "/Users/foo/.pyenv/versions/test/bin/jupyter-notebook", line 7, in <module>
    from notebook.notebookapp import main
  File "/Users/foo/.pyenv/versions/2.7.10/envs/test/lib/python2.7/site-packages/notebook/notebookapp.py", line 30, in <module>
    from zmq.eventloop import ioloop
  File "/Users/foo/.pyenv/versions/2.7.10/envs/test/lib/python2.7/site-packages/zmq/__init__.py", line 66, in <module>
    from zmq import backend
  File "/Users/foo/.pyenv/versions/2.7.10/envs/test/lib/python2.7/site-packages/zmq/backend/__init__.py", line 40, in <module>
    reraise(*exc_info)
  File "/Users/foo/.pyenv/versions/2.7.10/envs/test/lib/python2.7/site-packages/zmq/backend/__init__.py", line 27, in <module>
    _ns = select_backend(first)
  File "/Users/foo/.pyenv/versions/2.7.10/envs/test/lib/python2.7/site-packages/zmq/backend/select.py", line 27, in select_backend
    mod = __import__(name, fromlist=public_api)
  File "/Users/foo/.pyenv/versions/2.7.10/envs/test/lib/python2.7/site-packages/zmq/backend/cython/__init__.py", line 6, in <module>
    from . import (constants, error, message, context,
ImportError: dlopen(/Users/foo/.pyenv/versions/2.7.10/envs/test/lib/python2.7/site-packages/zmq/backend/cython/constants.so, 2): Symbol not found: _PyUnicodeUCS2_DecodeUTF8
  Referenced from: /Users/foo/.pyenv/versions/2.7.10/envs/test/lib/python2.7/site-packages/zmq/backend/cython/constants.so
  Expected in: flat namespace
 in /Users/foo/.pyenv/versions/2.7.10/envs/test/lib/python2.7/site-packages/zmq/backend/cython/constants.so

Si ça arrive,

$ pyenv uninstall 2.7.10
$ PYTHON_CONFIGURE_OPTS="--enable-unicode=ucs2" pyenv install 2.7.10

Refaire

De plus, PYTHON_CONFIGURE_OPTS =" - enable-framework = $ (pyenv root) /versions/2.7.11 " est une option pour exécuter Python en mode framework (?). Si vous ne le faites pas, matplotlib ne fonctionnera pas. Modifiez le numéro de version selon vos besoins. Cela ne fonctionne pas de toute façon si vous utilisez l'environnement virtuel (voir ci-dessous)

Use virtual environment

pyenv activate tech

Install jupyter

pip install jupyter

Matplotlib Sur iPython Notebook

import matplotlib.pyplot

Ensuite, une erreur se produit.

---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-1-c845eb879342> in <module>()
     19 
     20 sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath('__file__')))))
---> 21 import handcraft_feature_extractor
     22 #import text2vec
     23 import config

/Users/foo/codes/pksha/chatbot-base/handcraft_feature_extractor.py in <module>()
      1 #!/usr/bin/env python
      2 # -*- coding: utf-8 -*-
----> 3 from feature_extractor import FeatureExtractor
      4 import MeCab
      5 import config

/Users/foo/codes/pksha/chatbot-base/feature_extractor.py in <module>()
      3 import matplotlib
      4 import numpy as np
----> 5 import matplotlib.pyplot as plt
      6 import MeCab
      7 import re, pprint

/Users/foo/.pyenv/versions/2.7.9/envs/pksha/lib/python2.7/site-packages/matplotlib/pyplot.py in <module>()
    112 
    113 from matplotlib.backends import pylab_setup
--> 114 _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
    115 
    116 _IP_REGISTERED = None

/Users/foo/.pyenv/versions/2.7.9/envs/pksha/lib/python2.7/site-packages/matplotlib/backends/__init__.pyc in pylab_setup()
     30     # imports. 0 means only perform absolute imports.
     31     backend_mod = __import__(backend_name,
---> 32                              globals(),locals(),[backend_name],0)
     33 
     34     # Things we pull in from all backends

/Users/foo/.pyenv/versions/2.7.9/envs/pksha/lib/python2.7/site-packages/matplotlib/backends/backend_macosx.py in <module>()
     22 
     23 import matplotlib
---> 24 from matplotlib.backends import _macosx
     25 
     26 

RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a framework. See the Python documentation for more information on installing Python as a framework on Mac OS X. Please either reinstall Python as a framework, or try one of the other backends. If you are Working with Matplotlib in a virtual enviroment see 'Working with Matplotlib in Virtual environments' in the Matplotlib FAQ

http://matplotlib.org/faq/virtualenv_faq.html En référence à

Créez PATHTOENV / bin / frameworkpython et accordez l'autorisation d'exécution

~/.pyenv/versions/tech/bin/frameworkpython


#!/bin/bash

# what real Python executable to use
PYVER=2.7
PATHTOPYTHON=/usr/bin/
PYTHON=${PATHTOPYTHON}python${PYVER}

# find the root of the virtualenv, it should be the parent of the dir this script is in
ENV=`$PYTHON -c "import os; print os.path.abspath(os.path.join(os.path.dirname(\"$0\"), '..'))"`

# now run Python with the virtualenv set as Python's HOME
export PYTHONHOME=$ENV
exec $PYTHON "$@"
$ chmod +x ~/.pyenv/versions/tech/bin/frameworkpython

Dans cet état

$ frameworkpython -m IPython notebook

Lorsque IPython Notebook est démarré avec, ʻimport matplotlib.pyplots'exécute. Avez-vous remplacé le python que vous utilisez par celui de system dansframeworkpython? Donc, non limité à cet exemple, si vous rencontrez un problème qui semble être une erreur due à l'utilisation de Python de virtualenv, vous devriez essayer de l'exécuter avec framework python` à la place.

cependant,

$ frameworkpython -m jupyter notebook

Cela ne marche pas. Je me sens mal à l'aise, alors je veux faire quelque chose.

http://www.wirywolf.com/2016/01/pyplot-in-jupyter-inside-pyenv-on-el-capitan.html En référence à

$ jupyter --paths
config:
    /Users/foo/.jupyter
    /Users/foo/.pyenv/versions/2.7.9/envs/pksha/etc/jupyter
    /usr/local/etc/jupyter
    /etc/jupyter
data:
    /Users/foo/Library/Jupyter
    /Users/foo/.pyenv/versions/2.7.9/envs/pksha/share/jupyter
    /usr/local/share/jupyter
    /usr/share/jupyter
runtime:
    /Users/foo/Library/Jupyter/runtime

Définissez un nouveau noyau sous le premier de data:, / Users / foo / Library / Jupyter.

$ mkdir -p ~/Library/Jupyter/kernels/matplotlib
$ vi ~/Library/Jupyter/kernels/matplotlib/kernel.json

~/Library/Jupyter/kernels/matplotlib/kernel.json


{
 "argv": [ "/Users/foo/.pyenv/versions/tech/bin/frameworkpython", "-m", "ipykernel",
          "-f", "{connection_file}"],
 "display_name": "matplotlib",
 "language": "python"
}

Le noyau est maintenant défini avec le nom matplotlib.

Exécutez jupyter notebook normalement et Lorsque vous travaillez sur Jupyter Notebook, définissez le noyau sur matplotlib.

Recommended Posts

Créez un environnement avec pyenv, pyenv-virtualenv, jupyter sur OS X El Capitan
Créer un environnement python avec pyenv (OS X El Capitan 10.11.3)
Création d'un environnement R avec Jupyter (anciennement notebook IPython) (sous OS X El Capitan 10.11.3)
Installez matplotlib sur OS X El Capitan
Créer un environnement python avec pyenv sur EC2 (ubuntu)
Installation de TensorFlow 0.11.0rc2 sur OS X El Capitan (10.11.6)
Construire un environnement Python avec OSX Elcapitan
J'ai installé Pygame avec Python 3.5.1 dans l'environnement de pyenv sur OS X
Créer un environnement de développement Python sur Mac OS X
Lorsque l'importation de tkinter n'est pas possible avec Mac OS X 10.11.3 (El Capitan) + pyenv + Python 3.5.1.
J'ai essayé de créer un environnement d'apprentissage automatique avec Python (Mac OS X)
Utilisation du SDK NAOqi 2.4.2 Python avec Mac OS X El Capitan
Créer un environnement d'analyse de données python sur Mac (El Capitan)
Créer un environnement Python avec WSL + Pyenv + Jupyter + VSCode
Créer un environnement avec pyenv et pyenv-virtualenv
Comment reconstruire l'environnement python à partir de pyenv dans un environnement Mac (El Capitan)
Créer un environnement Jupyter Lab (Python) avec Docker
Créer un environnement Python avec Anaconda sur Mac
Construction de l'environnement GeoDjango + SQLite sur OS X
Créez un environnement virtuel pour python avec pyenv
Créez un environnement WardPress sur AWS avec Pulumi
Créez un environnement python avec ansible sur centos6
Construire un environnement Anaconda pour Python avec pyenv
Une histoire sur la création d'un environnement IDE avec WinPython sur un ancien système d'exploitation Windows.
[Memo] Créez un environnement virtuel avec Pyenv + anaconda
Créez un environnement virtuel avec pyenv et venv
Mettez Python 2.7.x dans pyenv sur Mac OSX 10.15.5
Exécutez le wrapper Python de l'API Qiita v2 dans un environnement Python 3 (Mac OS X 10.11 (El Capitan))
Créer un environnement Arch Linux sur Raspai
Installez LightGBM dans l'environnement virtualenv OSX
Créer un environnement OpenCV4 sur Raspberry Pi à l'aide de Poetry
Créer un environnement de développement Django à l'aide de pyenv-virtualenv sur Mac
Créer un environnement Python d'apprentissage automatique sur Mac OS
Créez un environnement python pour chaque répertoire avec pyenv-virtualenv
Comment installer Caffe sur OS X avec macports
[Linux] WSL2 Créer un environnement pour laravel7 avec Ubuntu 20.04
Créez un environnement Python sur votre Mac en utilisant pyenv
Installez PyQt5 avec homebrew sur Mac OS X Marvericks (10.9.2)
Créez un environnement Open AI Gym avec Bash sur Windows 10
Créer un environnement de développement Python à l'aide de pyenv sur MacOS
Créer un environnement de développement Python avec OS X Lion
Windows10 (x64) Créer nativement un environnement d'apprentissage automatique
Construire un environnement de calcul numérique avec pyenv et miniconda3
Construisez python3.x avec pyenv
J'ai appris MNIST avec Caffe et j'ai essayé de le dessiner (MAC OS X El Capitan)
Étapes pour installer la dernière version d'OpenCV sur OS X El Capitan sans Homebrew
J'ai installé Caffe pour pouvoir faire du Deep Learning avec MAC OS X El Capitan
Créer un environnement d'apprentissage automatique à l'aide de Python sur MacOSX
Ajouter une extension pour créer un environnement Jupyter plus confortable
Créer un environnement de développement Ubuntu python sur Google Cloud Platform
Présentation de l'image Docker de Kaggle sur Windows pour créer un environnement
Tester Python avec Miniconda dans un environnement OS X et Linux avec travis-ci
Créez un environnement sur Windows10 où vous pouvez essayer MXNet
Créez un environnement de développement confortable avec VSCode x Remote Development x Pipenv
Créer Python3 pour Windows 10 sur ARM avec Visual Studio 2019 (x86) sur Windows 10 sur ARM
Créer une application Todo avec Django ① Créer un environnement avec Docker
Comment installer Theano sur Mac OS X avec homebrew
Tout le monde peut comprendre comment créer un environnement initial pour Python sur Mac Septembre 2016 (pyenv + virutalenv)
Créer un environnement avec virtualenv