PythonのTutorials

スマホでPythonを使おう!

 Python3をスマホやタブレットでも活用できます。iOSでは、iOSのためのPython3.xがシンプルで便利です。Android系では、QPython3をインストールすると便利です。基本的には会話型シェル上のプロンプトの後に命令文を入力できます。インストールした後、命令文を入力してみて下さい。エラーが出なければ、OKです。
 スマホでも活用できる利用法を説明します。タブレットやスマホで遊ぶためのTutorial、言い換えると、Python本体の使用方法の詳しい説明は以下のファイルで説明されています。
Tutorial #1のpdf_ファイル すべてのコマンドの入力では英文入力に切り替えてください。最初に、
>>>x=’Hello World’
と入力して下さい。次のコマンドライン(>>>)が出ます。そこで
>>>print(x)
と入力すると、Hello World とコンソール上に表示されます。
Pythonは入力された命令文(コード)を上から順番に一個ずつ処理して行くので、スクリプト言語とも言われる。命令文に間違いがあれば、そこでエラーがでます。

Pythonの命令文や関数が処理できるデータは数値データと文字データです。これらの処理対象データを一括してオブジェクトと呼ぶ。オブジェクトを処理する方法を指示するのが命令文であり、関数です。数値データや文字データに操作を加えるためには、これらのオブジェクトを区別して保存する容器(引出し)が必要で、この容器(引出し)に名前(名称)をつける必要がある。名前をつけた入れ物(器)が変数と呼ばれる。
 x=’Hello World’という命令文は、xという名称の容器(変数)にHello Worldという文字データを格納しなさいと指示している。引用符'・・・‘("・・・ “ でもよい)はオブジェクトが文字データであることを指定している。x=”Hello World”と書いても同じです。数値データの場合は、x=2.46 などと、そのまま書く。print(x)は変数xの内容をシェルウインドウに印字することを指示している。

テキスト・エディターの利用

 プログラム言語を用いて何かの処理をしたいときは、文法と呼ばれるルールに従って、多数の命令の集まりからなるプログラムを作成する。これをソースコード、あるいはコードという。Pythonでは、適当なテキスト・エディターを用いて、ソースコードからなるファイルを作成し、それを拡張子.pyを付けたファイルとして保存する。実行可能なコードを記述したプログラム・ファイルをスクリプトファイルという。
 ですから、Pythonのスクリプトファイルを作成するためには、テキスト・エディターが必要です。Pythonの起動画面Python Shellから、保存したスクリプトファイルを呼び出して実行する。Python Shell画面上で、「file」→「open」でこのファイルを呼び出して、「run」→「run module」とクリックしてプログラムを実行する。
 日本語処理ができるテキスト・エディターが重要です。Python Shellはエディターの機能も併せ持っているが、日本語の処理には不向きです。初心者向けのフリーソフトとして、Windows向けにはTeraPad、Mac向けにはmiというテキスト・エディターが操作し易いと思います。Linux OS向けにはVimというエディターが推奨されています。上記のソフトをそれぞれダウンロードして、PCにインストールすると便利です。使用方法は簡単ですから、トライ・アンド・エラー方式で使ってみて下さい。
 エンコード方式はunicodeでutf-8に設定して下さい。Notepadは使用しない方が無難です。Pythonのアプリ開発のためのフリーソフトのEclpiseやPyscripterは初心者には取り扱いが難しいでしょう。以下のスクリプトをコピーして、これを「example.py」ファイルとして保存して下さい。IDLEから開いて、実行して下さい。
***********************************************
# -*- coding: utf-8 -*-
# how to use the index
name = ["cheese", "John"]
print (name[1],name[0])
x=["spam","spam","spam","spam","spam","egg","and","spam"]
print (x[5:7])
print (x[5],x[6],x[7])
***********************************************
このスクリプトはリスト型変数のスライスの方法を示したプログラムです。上のTutorialにも書きましたが、リスト型変数の番地は0から始まりますので、nameの番地1には"John"が入っています。このスクリプトを実行した結果は
John cheese
['egg', 'and']
egg and spam
となります。
 なお、スマホのPythonアプリには通常テキスト・エディターが内蔵されていて、多くのPythonアプリでは日本語の処理も可能になっている。スマホのエディターで上記のスクリプトファイルを作成して保存することも容易にできます。ただし、スマホのPythonアプリはPython本体だけがインストールされていて、複雑な数値計算用関数や高度な作図機能を持つモジュールは組み込まれていません。
 下にあるスクリプトファイルのうち、Python_demoはスマホで作動します。しかし、TurtleモジュールはTKinterを利用するので、スマホでは作動しません。PCが必要です。 各スクリプトファイルの中から、必要な部分をコピーして使用して下さい。一つのファイルに複数のモジュールが入っています。
・Python_demoのスクリプトファイル py.ファイル
・Turtle_graphicsののスクリプトファイル py.ファイル

スマホを関数電卓として活用しよう!

 スマホ用の関数電卓は多数ありますが、Pythonはそれよりもはるかに高機能な能力を発揮します。ファイナンス理論の最初に登場する投資プロジェクトの現在価値の計算式を取上げる。1年後にキャッシュフローCとして100万円を生み出す投資プロジェクトの現在価値はPV=C/(1+r)で計算される。ここで、rは割引率である。割引率が年率5%であるとき、つまり、r=0.05のとき、現在価値は
>>>r=0.05
>>>pv=100/(1+r) (>>>100*1/(1+r) と書いても良い)
>>>pv
と入力すればよい。結果は95.23...となります。2年後に120万円を生み出す投資プロジェクトの現在価値は
>>>pv=120/(1+r)**2
>>>pv
で計算できる。108.84...と表示されます。x**yはxのy乗の計算を意味する。今後3年間に渡り年120万円のキャッシュフローを生み出す投資プロジェクトの現在価値は
>>>pv=120/(1+r)+120/(1+r)**2+120/(1+r)**3
>>>pv
と計算できる。結果は326.78...です。
 数値計算を効率的に行うには、Pythonの標準ライブラリのmathモジュールを活用するのが便利です。mathモジュールには、三角関数、指数・対数関数などが組み込み関数として準備されています。mathモジュールを使用するためには、使用する前に、mathモジュールをimportする必要があります。つまり、
>>>from math import *
と記述しておく必要があります。(>>>import math as ma と書いても良いですが、その相違についてはTutorial#2を参照して下さい。)例えば、2.56の(自然)対数値を求めるときは、上の記述に続いて、
>>>log(2.56)
と入力すれば良い。
 次に、単なる電卓ではなく、プログラムを作成して、それをスクリプトファイルとして保存して活用するという高度な利用方法を説明します。1年後1億円、2年後に1.2億円、3年後に1.3億円、4円後に1.1億円、5年後に0.9億円の収益が見込まれる投資プロジェクトの現在価値の計算を取上げます。投資資金が4億円必要で、割引率が年率5%であるとします。初年後には4億円の支出が必要なで、キャッシュフローは−4億円となります。この投資プロジェクトのキャッシュフローの流れを、[-4.0, 1.0, 1.2, 1.3, 1.1, 0,9]と表現し、この投資プロジェクトの現在価値を計算するプログラムを作成する。スマホでpythonアプリを起動して、エディターを用いて、以下のようなファイルを作成します。
***********************************************************************************************************************
# -*- coding: utf-8 -*-
# computing of the Present_value of the project
cash=[-4.0, 1.0, 1.2, 1.3, 1.1, 0.9] #単位は億円
r=0.05
pv=cash[0] + cash[1]/(1+r) + cash[2]/(1+r)**2 + cash[3]/(1+r)**3 + cash[4]/(1+r)**4 + cash[5]/(1+r)**5
print (pv)
***********************************************************************************************************************
このファイルを.pyファイルで保存します。このファイルを実行すると、結果が表示されます。初期の投資資金を含めて計算しているので、ファイナンスでは、これを正味現在価値(net present value)と言います。割引率が異なるとき、あるいは、キャッシュフローが変化するときは、このファイルの対応する箇所の値だけを変えて実行します。例えば、今後3年間に渡り年120万円のキャッシュフローを生み出す投資プロジェクトの現在価値を計算したいときは、変数cashの部分だけを
cash=[0,120,120,120,0,0]
と修正すれば良い。任意の期間のキャッシュフローに対応する計算をするためには、for条件文を活用する。
***********************************************************************************************************************
# -*- coding: utf-8 -*-
# computing of the Present_value of the project
cash=[-4.0, 1.0, 1.2, 1.3, 1.1, 0.9] #単位は億円
r=0.05
pv=0.0
for t in range(len(cash)): 
 pv=pv + cash[t]/(1+r)**t
print (pv)
***********************************************************************************************************************
0.7739...と表示されれば成功です。ここで、len(cash)はcashのデータの個数を意味する。この例では、len(cash)=6です。range(len(cash))は整数の区間[0,1, 2, . . ., len(cash)-1]を表現しています。条件文の説明はTutorial #1を読んで下さい。上記のプログラムはいかなる長さのキャッシュフローに対しても有効です。なお、スマホを関数電卓として活用するためのチュートリアルは以下のファイルで説明しています。
mobile用のpython.pdf_ファイル

トップページに戻る