Pythonでプログラミングする上で、頻繁に使用する機能、文法をまとめておきます。
Pythonには2.x系と3.x系がありますが、基本的には3.x系を使用していきます。
Contents
データ型
Python で使用するデータの種類を表すデータ型には次のような種類があります。
- int : 整数型
- float : 浮動小数点型
- str : 文字列型
- bool : 真理値型
データ型は type()関数で調べることができる
1 2 3 4 5 6 |
>>> type(100) <class 'int'> >>> type(3.14) <class 'float'> >>> type("Hello World!") <class 'str'> |
算術演算
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
>>> 1+2 #和 3 >>> 2-1 #差 1 >>> 2*3 #積 6 >>> 4/2 #商 2.0 >>> 4/3 #商 1.3333333333333333 >>> 4%3 #あまり 1 >>> 7//2 #切り捨て除算 3 >>> 2 ** 16 #累乗 65536 |
変数
Pythonは「動的型付き言語」であるためユーザが変数の型を宣言しなくても自動で判断してくれます。
変数の初期化及び代入は 「変数名 = データ 」で行うことができる。
1 2 3 4 5 6 |
>>> x=100 >>> type(x) <class 'int'> >>> x=3.14 >>> type(x) <class 'float'> |
リスト(配列)
リストへのアクセス
データをまとめたものをリスト(配列)という。
リストは0番目から始まり、-1で最後の要素、-2で最後から二番目の要素を示す。
リスト名.index(インデックス番号) で要素にアクセスする場合は
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
>>> array = [1,2,3,4,5] #リストの初期化 >>> array[0] #0番目の要素にアクセス 1 >>> array[-1] #負の数字は後ろからの番号 5 >>> len(array) #リストの要素数(長さ) 5 >>> array[6] #リストの長さ以上にアクセスするとエラー Error >>> array[0:4] #0~4番目の要素にアクセス [1, 2, 3, 4] >>> array[3:] #3番目から最後までアクセス [4, 5] >>> array[:2] #最初から2番目までアクセス [1, 2] >>> array[3] = 100 #3番目の要素を変更 >>> array [1, 2, 3, 100, 5] >>> array.index(1) 0 |
リスト演算
1 2 3 4 5 6 7 |
>>> array * 2 #要素の繰り返し [1, 2, 3, 100, 5, 1, 2, 3, 100, 5] >>> array + [6,7] #要素の追加 [1, 2, 3, 100, 5, 6, 7] >>> del array[1] #要素の削除 >>> array [1, 3, 100, 5] |
ディクショナリ
ディクショナリは値とそれにアクセスするためのキーをひとまとめにしたデータ、ほかの言語では連想リストよ呼ばれるものです。
1 2 3 4 5 6 7 8 |
>>> dic = { 'abc':123, 'def':456} #ディクショナリの作成 >>> dic['abc'] #キー'abc'でデータにアクセス 123 >>> dic[789] = "ghi" #ディクショナリへデータの追加 >>> dic {'abc': 123, 'def': 456, 789: 'ghi'} >>> dic[789] 'ghi' |
真理値演算
bool型は 「 True 」または「 False 」のどちらかの値をとる真理値のデータ型です。
1 2 3 4 5 6 7 8 |
>>> x = True >>> y = False >>> not x #否定演算 False >>> x and y #論理積 False >>> x or y #論理和 True |
条件分岐(if)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
>>> if True: ... print("True") ... else: ... print("False") ... True >>> if False: ... print("True") ... else: ... print("False") ... False >>> if 1: ... print("True") ... else: ... print("False") ... True >>> if 0: ... print("True") ... else: ... print("False") ... False |
繰り返し処理
for文
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
>>> for i in [1,2,3,4,5]: ... print(i) ... 1 2 3 4 5 >>> for i in range(5): ... print(i) ... 0 1 2 3 4 >>> for i in range(1,10,2): #range(開始,終了,ステップ数) ... print(i) ... 1 3 5 7 9 |
while文
1 2 3 4 5 6 7 8 |
>>> x=3 >>> while x: ... print(x) ... x -= 1 ... 3 2 1 |
関数
1 2 3 4 5 |
>>> def hello(name): ... print("Hello " + name + "!") ... >>> hello("World") Hello World! |
クラス
1 2 3 4 5 6 7 8 9 10 11 12 13 |
>>> class greeting: ... def __init__(self,name): #コンストラクタ ... self.name = name ... def hello(self): ... print("Hello " + self.name + "!") #メソッド1 ... def goodby(self): ... print("Goodbye " + self.name + "!") #メッソッド ... >>> x = greeting("World") #インスタンス生成 >>> x.hello() Hello World! >>> x.goodby() Goodbye World! |
ライブラリ
外部ライブラリーを使用する場合に設定します。
1 |
>>> import numpy as np |
入出力
1 2 3 4 5 6 7 8 9 |
>>> print("Hello World") Hello World >>> x = "World" >>> print("Hello "+ x ) Hello World >>> print(1+2) 3 >>> print("1+2 = {0}".format(1+2)) 1+2 = 3 |