#はじめに#
Pythonに触る機会があったので、自分の復習も兼ねてPythonの基礎文法を簡単にまとめてみました!
#目次#
1.出力
2.変数
3.文字列の結合
4.if文
5.for文
6.while文
7.forとwhileでbreak, continue
8.list
9.辞書
#1.出力#
print( )で( )の中の値を出力することができます。
( ' )シングルコーテーションか( " )ダブルコーテーションで囲うことで文字列が表示されます
print('123')
>>>123
print("123")
>>>123
数値はシングルコーテーションなどで囲う必要はありません。
print(123)
>>>123
Pythonのプログラムでは123は数値、'123'は文字列として扱います。
たとえば数値の( 1 + 1 )は2になりますが、文字列の( '1' + '1' )は
文字列の結合になるため'11'となります。
print(1+1)
>>>2
print('1'+'1')
>>>11
#2.変数#
変数名 = 値で変数に値を代入できます。
値をシングルコーテーションなどで囲った場合はstr。整数の数値を入れた場合はint扱いとなります。
また、Pythonで変数の型を確認したい場合はtype関数を使用します
mystr = 'hello'
print(type(mystr))
>>> <type'str'>
myint = 123
print(type(myint))
>>> <type'int'>
print( )に変数名を入れることで変数の値を呼び出すことができます。
mystr = 'hello'
print(mystr)
>>>hello
#3.文字列の結合#
( + )記号で文字列の結合ができます。
mystr = 'hello'
print('こんにちは' + 'Python')
print(mystr + 'Python')
>>>こんにちはPython
>>>helloPython
文字列と数値を結合する際、そのままの状態で結合するとエラーが出てしまいます。
myint = 123
print('数字は' + myint)
>>>TypeError:can only concatenate str (not "int") to str
str( )関数で型の変換をすることでint型とstr型を結合して出力することが可能です。
myint = 123
print('数字は' + str(myint))
>>>数字は123
また、( , )を使用することでも文字列と数値の結合をすることは可能です。その際、結合した間に空白が入ってしまうため、print( )オプションのsepで区切り文字の指定をする必要があります。
myint = 123
print('数字は' , myint)
>>>数字は 123
myint = 123
print('数字は' , myint , sep='')
>>>数字は123
#4.if文#
単純なif文はこうなります。
if 条件式:
処理1
処理2
処理3 ←エラーになる
※注意点
・ifの行の最後に( : )コロンをつける
・処理のインデントを揃える
インデントがずれた文を書いてしまうとエラーとなります。
elifを使用することで複数の条件を指定できます。
if 1番目の条件:
1番目の条件が成り立つ場合の処理
elif 2番目の条件:
2番目の条件が成り立つ場合の処理
elif 3番目の条件:
3番目の条件が成り立つ場合の処理
else:
どの条件も成り立たない場合の処理
#5.for文#
for文の構文はこうなります。
for 変数 in データの集まり:
処理
for文はデータの集まりから一つずつデータを取り出すという流れになります。
たとえば、'Hello'という文字列から一文字ずつ取り出して表示する処理はこのようになります。
for char in 'Hello':
print(char)
>>>H
>>>e
>>>l
>>>l
>>>o
range関数を使用することで指定回数分ループする処理が書けます。
for i in range(3):
print(i)
>>>0
>>>1
>>>2
上記の場合 i = 0 から3回ループする処理になります。
i = 1 からループさせたい場合はループの範囲を指定してあげます。
for i in range(1,3):
print(i)
>>>1
>>>2
>>>3
#1~100までループしたい場合
for i in range(1,100)
print(i)
###・リストのループ処理###
リストについては**こちら**で詳しく説明します。
for文のデータの集まりの部分にリストの変数を入れることでリストの中身を一つずつ取り出すことができます。
list = ['item1', 'item2', 'item3']
for item in list:
print(item)
>>>item1
>>>item2
>>>item3
上記のコードは変数のitemにリストの中身を一つずつ代入して表示しています。
#6.While文#
while文はfor文と同様の繰り返し処理ですが、for文はデータの集まりの情報を一つずつ確認して最後の要素まで処理をするのに対し、while文は条件が成立する間、処理を繰り返します。
#valが4になるまで val = 0 に1を足していきます。
val = 0
while val < 4:
val += 1
print(val)
print('valは' + str(val))
>>>1
>>>2
>>>3
>>>4
>>>valは4
###・forとwhileの使い分け###
・繰り返し回数が決まっている場合はfor文
・繰り返す回数はわからないが、終了条件が明確な場合はwhile文
#7.forとwhileでbreak, continue
###・break文###
breakを使用することで、繰り返し処理を強制的に終了させることができます。
# for文でbreak
list = [1,2,3,4,5]
for i in list:
if i == 3:
break
print(i)
>>>1
>>>2
>>>breakで繰り返し処理終了
# while文でbreak
val = 1
while val < 10:
if val == 3:
break
print(val)
val += 1
>>>1
>>>2
>>>breakで繰り返し処理終了
###・continue文###
continue文は、処理をスキップしたい際に使用します。
スキップするだけなので処理は止まらずに継続します。
# for文でcontinue
list = [1,2,3,4,5]
for i in list:
if i == 2:
continue
print(i)
>>>1
>>>3
>>>4
>>>5
# while文でcontinue
val = 0
while val < 5:
val += 1
if val == 2:
continue
print(val)
>>>1
>>>3
>>>4
>>>5
繰り返し処理内のif文の条件のときにcontinueされるため、2の出力の部分で処理がスキップされています。
#8.list#
リストとは[ ]の中に( , )カンマ区切りで要素を並べたものです。
リスト作成時に値を変数で入れることも可能です。
list = ['a','b','c']
print(list)
>>>['a','b','c']
a = 10
b = 20
c = 30
list = [a,b,c]
print(list)
>>>[10,20,30]
list内の要素は**リスト名[ index ]**で指定位置の要素を参照できます。
list = ['a','b','c']
#先頭の要素
print(list[0])
#2番目の要素
print(list[2])
>>>a
>>>c
###・リストへの値の追加###
**リスト名.append( 追加要素 )**でリストの末尾に要素を追加することができます。
list = ['a','b','c']
list.append('d')
print(list)
>>>['a','b','c','d']
**リスト名.insert( 位置 , 追加要素 )**でリストの指定の位置に要素を追加できます。
list = ['a','b','c']
list.insert(1, 'd')
print(list)
>>>['a','d','b','c']
###・リストからの値の削除###
**リスト名.pop( )**でリストの末尾の要素を削除できます。
list = ['a','b','c']
list.pop()
print(list)
>>>['a','b']
**リスト名.pop( index )**でリストの指定位置の要素を削除できます。
list = ['a','b','c']
list.pop(1)
print(list)
>>>['a','c']
###・リストの値の更新###
リスト名[ index ] = 変更したい値でリストの指定位置の要素を更新できます。
list = ['a','b','c']
list[1] = 'x'
print(list)
>>>['a','x','c']
#9.辞書#
辞書とはキーとそれに対応する値を持つデータです。
辞書オブジェクトは、 {キー: 値 , キー: 値 , ...} のようにキーと値をコロン( : )で結合し、カンマ( , )で複数の要素を区切ります。
**辞書名[ キー ]**で辞書のキーに対応する値を取り出すことができます。
dict = { 'apple':1, 'orange':2, 'banana':3 }
print(dict['apple'])
>>>1
###・辞書の値の更新###
辞書名[ キー ] = 更新したい値で指定キーの値を更新できます。
dict = { 'apple':1, 'orange':2, 'banana':3 }
dict['apple'] = 5
print(dict)
>>>{ 'apple':5, 'orange':2, 'banana':3 }
###・辞書の値の削除###
**del 辞書名[ キー ]**で指定のキーと値を削除できます。
dict = { 'apple':1, 'orange':2, 'banana':3 }
del dict['apple']
print(dict)
>>>{'orange':2, 'banana':3 }
###・キーの存在確認###
in演算子を使用することで辞書に指定のキーが存在するか確認できます。
dict = { 'apple':1, 'orange':2, 'banana':3 }
if 'apple' in dict:
print('存在します')
else:
print('存在しません')
>>>存在します
**辞書名.get( キー , キーがない場合の処理 )**を使用するとif文が不要になります。
#キーが存在する場合
dict = { 'apple':1, 'orange':2, 'banana':3 }
print('appleは', dict.get('apple', '存在しません'), sep='')
>>>appleは1
#キーが存在しない場合
dict = { 'apple':1, 'orange':2, 'banana':3 }
print('fruitは', dict.get('fruit', '存在しません'), sep='')
>>>fruitは存在しません
#参考リンク#
https://www.atmarkit.co.jp/ait/articles/1904/02/news024.html
https://docs.python.org/ja/3/tutorial/index.html
https://www.sejuku.net/blog/24122
http://programming-study.com/technology/python-for/