暇人の研究室

金融工学やR言語・統計学について書いてます。

<

python入門その2~プログラムと関数

 

 

コメントを使う

 

自分でプログラムを組んだ時、コードをテストしたいときに一時的に他のコードを無効にしたり、作ったコードに使い方のメモをのせたいときは「#」を使います。

 

行の先頭に「#」をつけることで、それ以降のコードや文字はプログラムを動かす上で無視されます。

 

これはpythonだけではなく他のプログラミング言語でもほぼ共通の仕様です。

 

print関数

 

print関数とは、print()で()内に入力した文字や数字を画面に表示することできます。

 

もしprint('HELLO WORLD!!')と入力した場合は「HELLO WORLD!!と表示しろ」という命令を意味します。

 

>>> print('HELLO WORLD!!')
HELLO WORLD!!

 

 pythonがこの命令を実行するという事は、pythonがprint関数を呼び出し文字列の値が関数に渡されるという事を意味します。

 

この関数に渡される値を一般的に「引数」といいます。

 

input関数

 

input関数は、説明しづらいのですが簡単にいうと私たちユーザーがIDLE画面に何らかの文字や数字を入力してEnterキーを押すのを待つ関数です。

 

この関数を入力するとユーザーが入力した文字や数値を返します。↓の例だとhimajinという変数に次に入力した文字列が反映されます。

 

>>> himajin=input()
tk


>>> himajin
'tk'
>>>

 

この場合、私がhimajinと入力するとtkと返ってきます。

 

print関数の応用

 

今、print('I want to be '+himajin)という関数があった場合、前の行でhimajin=tkという式が保存されていれば↓のような結果になります。

 

>>> print('I want to be '+himajin)
I want to be tk

 

この場合だとinput関数の行での処理がprint関数に渡されて画面に表示されたという事になります。

 

len関数

 

 len関数は文字列の値を渡すと文字列に含まれる文字数を返してくれる関数です。

 

>>> len('himajin')
7

 

 文字列と数列組み合わせる

 

print関数で文字列と数列を+で合体させようとすると↓のようなエラーが出ます。

>>> print('I'+'want to'+5000)
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
print('I'+'want to'+5000)
TypeError: must be str, not int

 

これは+演算子が「文字列+文字列」と「数列+数列」の場合にしか使えないからです。(「数列+文字列」はpythonにおいて文法違反ということです。)

 

もし5000のような整数と文字列を合体させたい場合は「str()」という渡された値を文字列に変換する関数を使います。

 

 >>> print(' I '+'want to '+str(5000))
I want to 5000

 

str() ⇨ 渡された値を文字列に変換する

int() ⇨ 渡された値を整数に変換する

float() ⇨ 渡された値を浮動小数点に変換する