AnacondaのPython3を一時的に2.7に切り替えたい

環境
* Mac OS X 10.12.6(16G1114)
* Python 3.6.0 :: Anaconda custom (x86_64)
* npm 5.8.0

# 困ったこと

Node.jsでアプリを作っているときに必要になったパッケージがインストールできない。
どうやら`node-gyp rebuild`を実行するところで詰まっていて、原因はPythonのバージョンがv2.5.0以上v3.0.0未満ではないことらしい。

```bash
$ npm install heapdump --save

> heapdump@0.3.9 install /Users/kecy/dev/src/github.com/kecbigmt/onlinedojo-web/node_modules/heapdump
> node-gyp rebuild

gyp ERR! configure error
gyp ERR! stack Error: Python executable "/Users/kecy/anaconda/bin/python" is v3.6.0, which is not supported by gyp.
gyp ERR! stack You can pass the --python switch to point to Python >= v2.5.0 & < 3.0.0.
gyp ERR! stack     at PythonFinder.failPythonVersion (/Users/kecy/.nvm/versions/node/v7.9.0/lib/node_modules/npm/node_modules/npm-lifecycle/node_modules/node-gyp/lib/configure.js:492:19)
gyp ERR! stack     at PythonFinder.<anonymous> (/Users/kecy/.nvm/versions/node/v7.9.0/lib/node_modules/npm/node_modules/npm-lifecycle/node_modules/node-gyp/lib/configure.js:474:14)
gyp ERR! stack     at ChildProcess.exithandler (child_process.js:197:7)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:194:7)
gyp ERR! stack     at maybeClose (internal/child_process.js:899:16)
gyp ERR! stack     at Socket.<anonymous> (internal/child_process.js:342:11)
gyp ERR! stack     at emitOne (events.js:96:13)
gyp ERR! stack     at Socket.emit (events.js:191:7)
gyp ERR! stack     at Pipe._handle.close [as _onclose] (net.js:510:12)
gyp ERR! System Darwin 16.7.0
gyp ERR! command "/Users/kecy/.nvm/versions/node/v7.9.0/bin/node" "/Users/kecy/.nvm/versions/node/v7.9.0/lib/node_modules/npm/node_modules/npm-lifecycle/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/kecy/dev/src/github.com/kecbigmt/onlinedojo-web/node_modules/heapdump
gyp ERR! node -v v7.9.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! heapdump@0.3.9 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the heapdump@0.3.9 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/kecy/.npm/_logs/2018-04-09T04_22_47_180Z-debug.log
```

# 1. AnacondaにPython 2.7の環境をインストールする
幸いAnacondaでPythonを入れていたので、割とさくっと切り替えられそう。調べたらでてきた`$ source activate py27`を実行すればよさそう。

しかし、py27が入っていなかった。

```bash
$ source activate py27

CondaEnvironmentNotFoundError: Could not find environment: py27 .
You can list all discoverable environments with `conda info --envs`.

$ conda info --envs
# conda environments:
#
root                  *  /Users/jp21658/anaconda
```

なので`conda create -n py27 python=2.7 anaconda`でpy27をインストール

```bash
$ conda create -n py27 python=2.7 anaconda
Fetching package metadata .........
Solving package specifications: .

Package plan for installation in environment /Users/kecy/anaconda/envs/py27:

The following NEW packages will be INSTALLED:
    _license:           1.1-py27_1
    alabaster:          0.7.10-py27_0
    anaconda:           4.4.0-np112py27_0
# ...ずらっとパッケージの一覧
# （省略）
# ...

Proceed ([y]/n)? y # yを入力して続ける

jbig-2.1-0.tar 100% |#####################################################| Time: 0:00:00   7.63 MB/s
jpeg-9b-0.tar. 100% |#####################################################| Time: 0:00:00   5.62 MB/s
libiconv-1.14- 100% |#####################################################| Time: 0:00:00   9.87 MB/s
# ...ずらっとパッケージインストール
# （省略）
# ...

#
# To activate this environment, use:
# > source activate py27
#
# To deactivate this environment, use:
# > source deactivate py27
#
```

あらためて確認してみると、ちゃんと入っているのが確認できた。

```bash
$ conda info --envs
# conda environments:
#
py27                     /Users/kecy/anaconda/envs/py27
root                  *  /Users/kecy/anaconda
```

#2. Python2.7に切り替え
そしてあらためて`source activate py27`を実行すると切り替えできた。プロンプト記号のところがそれっぽくなっている。

```bash
$  source activate py27
(py27) $
```

#3. 目的を果たしたら元に戻す
これで晴れて`node-gyp rebuild`を実行できるようになった。

```bash
(py27) $ npm install heapdump --save

> heapdump@0.3.9 install /Users/kecy/dev/src/github.com/kecbigmt/onlinedojo-web/node_modules/heapdump
> node-gyp rebuild

  CXX(target) Release/obj.target/addon/src/heapdump.o
  SOLINK_MODULE(target) Release/addon.node
+ heapdump@0.3.9
added 1 package from 1 contributor in 8.367s
```

目的のパッケージをインストールできたので、`source deactivate`でもとのPython 3に戻そう。

```bash
(py27) $ source deactivate
$ python --version
Python 3.6.0 :: Anaconda custom (x86_64)
```

めでたしめでたし

## 参考記事
https://qiita.com/LittleWat/items/166f976cccf30bc63e62