pythonとは
pythonはコンパイラ型言語(C言語など)のように実行可能ファイルを作成する必要がなく、機械語翻訳と同時に実行を行うインタープリタ型言語です。
本記事はC言語を基礎知識として持っている人向けです。
python 2系向けに作成。
コードはpaiza.ioにて動作テストをしています。
基本事項
ソースファイルの拡張子は".py"
コメント文は#の後に書く
自動的に改行が行われるのでC言語のように\nと表記する必要はない。
以下に基本的なソースコードの記述を記載する。
#文字コードは以下のように指定する(UTF-8を指定する場合)
# coding:UTF-8
#変数を定義する場合(型を指定する必要はない)
a = 5
b = 'str'
#四則演算や演算子は基本的にC言語と同様である
c = a + 5
#print文は, "と'どちらを用いてもよい
print'Hello world!!'
基本的な文法
3大制御構造
3大制御構文とは、上から順に実行する順次、条件によってケースを選んで実行する選択、ある条件を満たす場合だけ繰り返す反復の3つである。ここではif文、for文、while文を記載する。
if文(if-else文)
条件式が真のときのみ実行する。偽の場合の処理も指定したい場合にはelseを使う。
C言語のように{}は必要とせず、インデントを用いて記述する。
# coding:UTF-8
'''構文
if 論理式 :
真のときの実行式
else
偽のときの実行式
'''
#例
x = 10
y = 5
if x>y:
print 'xはyより大きい'
else:
print 'yはxより大きい'
'''実行結果例
xはyより大きい
'''
for文(for-range文)
pythonでのfor文はrange関数を用いることによって、繰り返す回数を指定することができる。また引数には負の数を指定することもできる。
# coding:UTF-8
'''構文
for var in range():
実行式
'''
#例:-5から5までの数字を表示させる
for i in range(-5, 6):
print i
'''実行結果
-5
-4
-3
-2
-1
0
1
2
3
4
5
'''
while文
条件式が真である限り繰り返し実行式を行う。
# coding:UTF-8
'''構文
while 条件式:
実行式
'''
#例
a= 0
while(a<5):
print a
a++
print a
'''実行結果例
0
1
2
3
4
5
'''
関数
関数を定義する場合にはdef文を使用する。
returnにて戻り値を指定するが、これを省略するとNoneを返す
またpythonにはメソッドがある。これはクラス内に定義されているものを指しており、モジュール内で定義されているものが関数である。
#coding UTF-8
'''構文
def 関数名(仮引数):
関数の実行処理記述
'''
#例:乗数を返す関数を定義
a = 3
def func(a):
return a**2
print func(a)
'''実行結果例
9
'''
文字列
文字列は''で括って表す。
pythonではバイト文字列とUnicode文字列を扱うことができる。Unicodeは日本語などを扱うときに使用する。
またprint文の最後にコンマをつけると改行されなくなる。
#coding UTF-8
#日本語を表示させる文字列
print('日本語')
#文字列もリストのように要素から読み込める
j = 'japanese'
print j[2]
#文字の連接は+を用いて行う
f = 'food'
print(j + f)
#文字列の検索
#('検索したい文字列' in 検索する文字列)
#実行結果はTrueまたはfalseが返ってくる
print('japan' in j)
'''実行結果例
日本語
p
japanesefood
True
'''
リスト
C言語でいう配列にあたるデータ構造である。リストの大きさを指定する必要はなく、また整数や文字列など異なったオブジェクトを並べても構わない。
#coding UTF-8
# coding: utf-8
# Here your code !
#listの作成(連番はrange関数を利用すると手間が省ける)
a = range(5)
b = [6, 7, 8]
print a
#要素はC言語と同様に0から始まる
print a[4]
#リストの一番後ろに要素を追加(異なるオブジェクトでもよい)
a.append(5.00)
print a
#指定した位置の要素を代入する
a[0] = 'zero'
print a
#指定した位置に要素を追加する
#n番目mを追加する場合 list.insert(n, m)
a.insert(0, -1)
print a
#リストから指定した要素を削除する
del a[0]
print a
#リストの結合
a.extend(b)
print a
'''実行結果例
[0, 1, 2, 3, 4]
4
[0, 1, 2, 3, 4, 5.0]
['zero', 1, 2, 3, 4, 5.0]
[-1, 'zero', 1, 2, 3, 4, 5.0]
['zero', 1, 2, 3, 4, 5.0]
['zero', 1, 2, 3, 4, 5.0, 6, 7, 8]
'''
辞書
辞書はとは、キーと対になる値のペアをリスト化したものである。
値はどのような型でも指定できるが、キーには変更不能なオブジェクトを指定しなければならない。
#coding utf-8
'''構文
dic = {キー:値, キー:値、キー:値...}
'''
#例
age = {'tanaka':20, 'yamada':16, 'eto':33}
print dic[eto]
#辞書は結合させることもできる
age2 = {'wada':45, 'seki':12}
age.update(age2)
print age
#辞書の削除
del age['wada']
print age
参考ページ
大東文化大学 経済学部 経済学科 水谷正大氏のWebページ
python入門
ほぷしぃ 特集PC技術 Pythonを学ぼう