pythonの実行環境

1. 実行環境無しで動作させる(Webサービスを使う)

pythonいきなり試そうと思っても、残念ながら使えません。面倒ですよねー。

そこで、便利なサイトがあります。
たとえば、以下。

(1)paiza.io

実行環境を用意してくれているのです。軽く試したり、まずは勉強であれば、こういう環境の方が楽ですね。

(2)JupiterNotebook

・pythonではJupiterNotebookというブラウザベースの実行環境がある。例えば以下のGoogle Colabで、このサービスで利用することができる。
・実行結果がリアルタイムに表示されたり、プログラム以外にメモが書けたり、実行結果をグラフ表示もできるなど、試行錯誤しながら勉強するには適した機能も多いのでオススメです。
・ファイルに保存するときの拡張子は.ipynb(IPython NoteBook)
・また、Pythonではインデント、つまり、開始位置が重要。「あれ?開始位置はどこかな?タブ?それとスペース?」などと迷った場合に、上記のプラットフォームに任せるのが得策。つまり、Enterで改行して自動的に配置された位置でスタートする。

(3)Google colab

❶概要
優れモノ。かなり便利。
また、Google colab では、ハードウェアアクセラレータを選ぶことができる。
上のメニューの「ランタイム」>「ランタイムのタイプを変更」から行う。
None、GPU、TPUを選択できる。
・ファイルの拡張子は .ipynb にしておこう。そうしないと、Googleコラボとの括り付けができない。

❷ファイルを作ってみよう
「ファイル」>「新規作成」
以下のコマンドを実行すればわかるが、フォルダは/content で、sample_dataというフォルダがあり、サンプルデータが入ってる。

!pwd      #==> /content
!ls          #==>  sample_data
! ls sample_data/
#==>
#anscombe.json		      mnist_test.csv
#california_housing_test.csv   mnist_train_small.csv
#california_housing_train.csv  README.md
#sample_data
(4)Google colabで、外部のファイルを使う

❶ファイルアップロード
GoogleColabでは、左にフォルダが作成できる。そこにファイルを置いて、読み込んだりできる。
左のファイルから、上矢印のアイコンでアップロード
(Google DriveにUploadしたファイルを選択することもできると思う)
https://qiita.com/wakame1367/items/74a8575874c1a9154cff
sample_dataみたいなのがあると思うが、気にしない。
f:id:seeeko:20201202114903p:plain
以下のように実行することで,ファイルを開くことができる。

import wave
wavfile = wave.open('a.wav', 'rb')

❷アップロードの記述をする

from google.colab import files
uploaded = files.upload()

こうすると、アップロードのボタンが表示され、そこでアップロードできる。すると、GoogleColabの直下にファイルがUPされる。
f:id:seeeko:20201222183426p:plain

❸Githubからwget
Wgetでファイルを取得して、dataディレクトリを作成してその配下に入れる。
以下のように、実行する。

!wget -P ./data https://raw.githubusercontent.com/t-xxx/c_xxxx/master/user.txt

❹Linuxのコマンドのようなもの
基本的に、Linuxのコマンドを実行するには!をつける
・現在のフォルダを表示する

!pwd

・ファイルを見る

!ls

・モジュールの表示とインストール

#インストール済のモジュールを確認
!pip list

#追加でsimpyのモジュールをインストール。ちなみにsimpyは離散イベントシミュレーションのモジュール
!pip install simpy 
(5)Anaconda(アナコンダ)

Anacondaは、機械学習に関するライブラリーが含まれているので、使いやすいようだ。だが、Google colabがあれば、Ananondaは不要だと思う。

(6)その他

・Google colabで行番号を表示
ツール>設定>編集者 「行番号を表示」

2. Windowsで環境を作ってみる

(1)Pythonのインストール

Pythonのサイトからインストールする
https://www.python.org/
Windows版もあるので、それを選択する。
Python>>> Downloads>>> Windows
から、64ビットか32ビットなどを考慮してダウンロード。かなりわかりにくいが、私は「Windows installer 64-bit)」をインストールした。

実行時には、Add Python 3.6 to PATHのチェックを入れる

(2)Pythonの実行

❶起動
コマンドプロンプトから(Powershellを使わず)、pyと入力すると、インタラクティブモードになる。quit()で抜ける。

C:\Users\user1>py
Python 3.9.1 (tags/v3.9.1:1e5d33e, Dec  7 2020, 17:08:21) [MSC v.1927 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> 1+1
2
>>>

また、WindowsのPowershellから起動できる。→イマイチだった。
まず、インストールの確認として、バージョンを確認しよう。

PS C:\> python --version

Python 3.7.2

3.7.2がインストールされていることがわかる。

❷基本コマンド
Linuxと同じである。
lsやらpwd、cdなどが使える

❸Pythonの対話型モード
pythonと入力すると、対話モードになり、コマンドを実行できる。

PS C:\python> python
Python 3.7.2・・・・・・
>>> 3+5   ←3+5を実行する
8      ←結果が表示される。

抜けるにはexit()か、quit()、Ctrl+Zでリターンを押す

・最後の結果の値は _という変数に代入される。なので、この_を使って計算も可能

C:\Users\user1>py
Python 3.9.1 (tags/v3.9.1:1e5d33e, Dec  7 2020, 17:08:21) [MSC v.1927 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> 5*20
100
>>> _+30
130
>>>

❹ファイルを作成する
拡張子は.pyとする。基本はすべて小文字。(このファイルをpythonスクリプトファイルといいます。)
ためしに書いてみる。とっても簡単だ。しかも、構文がわかりやすい。
Cだとprintfという無駄なfがついているのでわかりにくい。

print("こんちくは")

・UTF-8の文字コードを使う。
UTF-8の場合は以下が書かれてある。Shift-JISなどの場合は変える必要あり

# -*- coding: utf-8 -*-

エディタはメモ帳などのテキストエディタでも書けますが、統合開発環境もオススメです。ATOMであったり、Windows環境であればPowershellでデフォルトにあるISEが便利かも。

❺実行
コマンドプロンプトから実行する場合は作ったスクリプトファイルを指定すればOK。

c:¥> test.py

PowerShellからでも実行できる。こちらの場合は、pythonと入れる。

PS C:¥> python test.py

❻その他
・ファイルからPythonのスクリプトを読み込む
 python3 < filename
・スクリプトを実行後に対話モードに入る場合
 スクリプト名の前に -i をつける
・一次プロンプトは>>> 2次プロンプトは「...」
・pythonのインタプリンタでは起動時に自動で、変数名やモジュールを補完してくれる。
でも、Widowsに入れてコマンドプロンプトで実行しても、自動補完をしてくれない。
そこで、以下のようにモジュールをインストールした

C:\>py -m pip install pyreadline

改めて実行

C:\>py
Python 3.9.1 ・・・
>>> abc='1234'
>>> print(a  ←ここでtabキーを押すと、以下のように候補が表示された。
and     assert  await   abs(    any(
as      async   abc     all(    ascii(

・インタプリンタだと、print()関数をつかう場合とそうでない場合で出力が異なる。print()関数では、'が削除される。バックスラッシュなどもそうだろう。

>>> 'AAA'
'AAA'
>>> print('AAA')
AAA
>>> print('A\nA')
A
A
>>> 'A\nA'
'A\nA'

3. Androidで環境を作ってみる

このブログをスマホで見ている人も多いと思うのですが(多いといいなあ)、スマホでpythonを勉強することも可能です。
最初に触れたWebサービスはスマホでも動きますので、それを使うのもひとつの手です。
また、スマホ上でpythonを動かすアプリもありますので、インストールしてみるのもいいでしょう。
例えば、以下のアプリが分かりやすいです(Androidのみしか見ていませんが)

QPython3 - Python3 for Android

QPython3にはコードエディタも含まれており、実行環境と連動しているので便利ですが、コードだけ書きたい場合は(別環境で動かす場合など)、使いやすいエディタをオススメします。いくら便利になっているとはいえ、PCに比べると入力は不便ですからね。

テキスト選択やコピペが正しく動作する
記号の入力ボタンがある
コードハイライト機能がある
自動インデントやクォーテーションマークやカッコの自動補完機能がある
いくつか試していますが、今はこれが使いやすいかなと思います。

Quoda Code Editor