Python 文法まとめ

基本命令

画面表示

print(文字列)

# 複数引数で表示
n = 10
print("答えは",n,"です") # 空白区切り

入力

変数 = input(メッセージ)

str = input("文字列を入力:")

型変換

文字列を数値
変数 = int(文字列)

num = int(str)

数値を文字列に
変数 = str(文字列)

s = str(num)

乱数

例:0~9までの乱数

import random
num = random.randint(0,9)
print(num)

コレクション

リスト

複数の変数をまとめて管理。番号(添え字)で区別する。添え字は0~要素数-1まで。

# リストを作る
lst = [5,9,8,7,3]

#リストの値を表示
print(lst[2]) # 2番目を表示

#リストに値を入れる
#リスト名[添え字] = 値
lst[0]=10

#リストにデータ追加
lst.append(20)

#リストからn番目を削除
lst.pop(n)

# リストからデータ9を削除
lst.remove(9)

#リストの要素数
# len(リスト)
print(len(lst))

タプル

複数の値をまとめて管理。番号(添え字)で区別する。添え字は0~要素数-1まで。
リストとの違いは変更できないこと

# タプルを作る 
tpl = (5,9,8,7,3)

#要素表示
print(tpl[0])

#要素数
print(len(tpl))

辞書(ディクショナリ)

キーと値のペアをまとめて管理。添え字の代わりにキーを指定する。

# 辞書を作る
dic = {"ringo":100,"mikan":120,"ichigo":200}

# 値の表示
print( dic["ringo"] )

# 値の変更
dic["ringo"] = 110

# 値の追加
dic["momo"] = 300

# 値の削除
dic.pop("mikan")

# キーの有無判定
if 'ringo' in dic:
    print("ある")

制御構造

if文

if(条件式):
    # 条件式がtrueの時
else:
    # 条件式がfalseの時
print("数を入力:")
num = int(input())
if( num >= 10):
    print("10以上です")
else:
    print("10未満です")

for文

リストからデータを1つずつ取り出す

data = [5,8,9,7,4]
for num in data:
    print(num)

指定回数だけ繰り返す。

for num in range(5):
    print(num)

while文

繰り返す条件がtrueであれば繰り返す

while 繰り返す条件:
    # 繰り返す内容
# 0~4を表示
num=0
while num<5:
    print(num)
    num=num+1

関数

戻り値・引数なし

def 関数名() で定義する。関数名の後のかっこの中は何も書かない。 呼び出すときは 関数名()

def sample():
    print("test")

#呼び出すとき
sample()

引数あり

関数名の後のかっこの中に変数を書く(複数ある場合、カンマで区切る)。

def sample(num1,num2):
    print(num1+num2)

#呼び出すとき
sample(5,4)

戻り値あり

戻り値をreturnで返す。

def sample(num1,num2):
    return num1+num2

#呼び出すとき
sum = sample(5,4)
print(sum)

クラス

class クラス名:
	def メソッド名(self,引数,,):
  • メソッドには必ず引数selfを付ける。selfはインスタンスを表す。
  • self.変数名 で属性(インスタンス毎に持つデータ)を表す。
  • self.メソッド名 でインスタンス内のメソッドを実行。
class Member:
    def setName(self,n):
        self.name = n

    def showName(self):
        print(self.name)

クラスからインスタンス(オブジェクト)を生成

クラスはインスタンスを生成しないと使えない。

# Memberクラスのオブジェクト生成
m = Member() 

m.setName("田中")
m.showName()

上の例のmはMemberインスタンスを入れるための変数。Member()でMemberクラスのインスタンスを生成している。

コンストラクタ

  • コンストラクタ=インスタンス生成時に自動的に呼ばれるメソッドのこと
  • __init__ という名前で作ったメソッドがコンストラクタになる
class Member:
    def __init__(self):
        self.name = "鈴木"

    def showName(self):
        print(self.name)

インスタンス生成の例(上のMemberクラスの場合)

m = Member()
m.showName() # 鈴木と表示

インスタンス生成時に引数を付ける

class Member:
    def __init__(self,name):
        self.name = name

    def showName(self):
        print(self.name)

m = Member("田中")
m.showName() # 田中と表示