IDLEでPython3：インストール・動作確認編


　ここでは，Python3をインストールし，IDLEでスクリプトを作成・実行する方法についてまとめていきます．よろしくお願いいたします．
 
### 目次

* [Pythonのインストール](#pythonのインストール)
* [Pythonの動作確認](#pythonの動作確認)
* [IDLEの起動](#idleを起動しよう)
* [スクリプト作成/実行](#スクリプトを書いて実行してみよう)
* [設定](#設定を見てみよう)

### 環境

* Windows10 (64-bit)
* Python 3.7.3


# Pythonのインストール
　まずPythonの公式ホームページよりインストーラをダウンロードします．

* [Pythonダウンロードページ][pyorg]

![PythonInstall01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/144209/2e8b3751-fb0e-7137-dd81-9cba87709e73.png)

　`Download Python 3.7.3`ボタンを押すと，最新版(2019年5月21日現在)のpython-3.7.3.exeをダウンロードします．他のバージョンは下の方にあります．好みのものを選択してください．

　次にダウンロードしたインストーラを起動します．

![PythonInstall02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/144209/f29ac225-a4fd-e173-7923-3e150b9c1c75.png)

　`Install Now`でもいいですが，私はPythonのインストールフォルダの設定などをしたいので，`→ Customize installation`を選択しました．以下はその様子です．

Customize installation
![PythonInstall03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/144209/745607f6-a2b9-0736-0d2b-ce090371c72e.png)
* ３番目のチェックに注意．tkinterはGUI作成用のライブラリ，IDLEが今回使おうとしている開発環境です．ここではどちらもインストールしておきます．

![PythonInstall04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/144209/8173f4a7-d61c-36dd-a42f-7ebcb94756de.png)
・ダウンロード先を指定
・[環境変数にPythonを追加]にチェック

![PythonInstall05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/144209/f79adcf6-83e0-556e-4107-3c4d68b43951.png)

これでPythonを使うことができるようになりました．

# Pythonの動作確認
　Pythonは基本的にコンソールから起動することができます．少し動作確認しましょう．

### コマンドプロンプトから対話型インタプリタ起動

```cmd
$ py または $ python
Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 21:26:53) [MSC v.1916 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
```
　この画面が出たら成功です．ちなみに`py`コマンドはインストール時に有効にしたものです．調べてみたらパスの通ったところにpy.exeがありました．

### メモ帳などで書いたスクリプトを実行

```python:hello.py
print("hello, world!")
```

```cmd
$ python hello.py
hello, world!
```

# IDLEを起動しよう
### IDLEショートカットから起動
　Windowsの場合，スタートメニューにIDLE起動用のショートカットが追加されています．普通に起動するだけならこれが一番便利でしょう．ちなみにショートカットの中身は次のようになっています．

```IDLE&nbsp;(Python&nbsp;3.7&nbsp;32-bit)&nbsp;-&nbsp;ショートカット
 "…\Python37-32\pythonw.exe" "…\Python37-32\Lib\idlelib\idle.pyw"
```
　このidlelibディレクトリにはidle.py, idle.batなども入っています．どちらもIDLE起動スクリプトです．

### Pythonインタプリタ内で起動
　idle.pyの中身を参考にすると，通常のPythonインタプリタから次のコマンドを入力すれば，IDLEを起動できることが分かります．

 ```cmd 
>>> import idlelib.pyshell
>>> idlelib.pyshell.main()
```

### バッチファイルから起動
　idle.batを使って起動するなら，「Pythonインストールフォルダ\Lib\idlelib\idle.bat」を直接実行するか，ショートカットを作成して実行します．バッチファイルの中身は次の通りです．

```idle.bat
@echo off
rem Start IDLE using the appropriate Python interpreter
set CURRDIR=%~dp0
start "IDLE" "%CURRDIR%..\..\pythonw.exe" "%CURRDIR%idle.pyw" %1 %2 %3 %4 %5 %6 %7 %8 %9
```

### コマンドで起動できるようにする
　idle.batをパスの通ったフォルダ(ここではPythonのインストールフォルダ「Python37-32」)にコピーし，4行目のstartコマンドの引数を適切に直せば，`Win+R`で`idle`と入力するだけで起動できるようになります．

```Python37-32\idle.bat
@echo off
rem Start IDLE using the appropriate Python interpreter
set CURRDIR=%~dp0
start "IDLE" "%CURRDIR%\pythonw.exe" "%CURRDIR%\Lib\idlelib\idle.pyw" %1 %2 %3 %4 %5 %6 %7 %8 %9
```

以上のどれかの方法で，次のようにPython Shellが起動します．
![IdleShell01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/144209/8d7d778e-f653-f69c-85fc-44b71f0e0a0c.png)

# スクリプトを書いて実行してみよう
　Pythonはインタプリタにコマンドを入力することもできますが，あらかじめコマンドをスクリプトファイルに入力して，それを読み込ませて実行することもできます．複雑なプログラムを実行するときは通常こちらですね．中間コードを生成することで高速化・効率化を図ることもできます．

　早速やってみましょう．

### スクリプトファイルを作成
　[File] ＞ [New File] または`Ctrl+N`で新規ファイルを作成します．

```python:hello.py
print("hello, world!")
input()
```

[File] ＞ [Save] または`Ctrl+S`で保存できます．`Ctrl+Shift+S`で「名前を付けて保存」などもできます．

### スクリプトを実行
　[Run] ＞ [Run Module] または`F5`でそのファイルを実行できます．実行結果は「Python Shell」ウィンドウに表示されます．
![IdleShell02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/144209/09ed18e9-15dc-32de-0437-02842cd60109.png)

# 設定を見てみよう
　[Options] ＞ [Configure IDLE] から設定ウィンドウを開けます．

・ Fonts/Tabs
・ Highlights
・ Keys
・ General
・ Extensions

　「Keys」には便利なキーバインドがたくさん登録されています．詳しく見ていけば，効率的にIDLEを使いこなすことができるでしょう．


---- 以上

|next|
|:---|
|[IDLEでPython3：基本操作・キーバインド編][next]|

[pyorg]: https://www.python.org/downloads/
[next]: https://qiita.com/LostEnryu/items/03c8244bb7c5463f229d