とりあえずPythonがかけるように
使ってみたくなったので、Pythonがどんな感じなのか、以下の入門記事を見ながらまとめてみました。C++の文法を基準に書いています。かなり省いているので詳細はもとの記事を参照してください。
2010-01-26
Python入門 ~Pythonのインストール方法やPythonを使ったプログラミングの方法について解説します~ | PythonWeb
どうやって実行するか
端末で"python filename.py"のように入力すれば実行できます。試しに以下のhello worldを実行してみましょう。
print "Hello, Wordl!"
pythonの環境が整っていない場合はここからインストールすれば良いはず。
http://www.python.jp/Zope/download/pythonjpdist
入出力
出力はprintを使います。printは自動的に改行が行われます。コンマで区切ることで一文で複数個出力することもでき、その場合はspaceで区切られます。
>>> print "ABC" ABC >>> print "ABC", "DEF" ABC DEF >>> print 3 3 >>> print 3+5 8
入力は文字列の場合raw_input()を、数値の場合input()を使えばよさそう。
print raw_input()
とすれば入力した文字列をそのまま表示します。
変数
Pythonには変数の宣言がなく、型を気にすることなく代入可能。
代入式は 変数名 = オブジェクト
a = 1 a = "abc" #自由に代入できる
Pythonはインクリメントができないので、代わりに variable+=1 のようにするとよい。
配列
Pythonではリストと呼ばれる。[1,2,3] のように書く。
[1,"abc",3, [1,2] ]のように、複数の型の要素からなるリストも可能。
要素にアクセスするのはc++と同じ。例えばa=[1,2,3]ならa[0]=1,a[1]=2,a[2]=3。
制御文
if-else文は以下のようにしてかく。
a = input() if a%2==0: print "even" else: print "odd"
Pythonは、他の言語とは違い、ブロック構造がインデントで表現されるので、インデントを厳密に書く必要がある。この特徴のおかげで、シンプルに美しくコードがかけるらしい。
条件文はC++も基本的に変わらないはず。
else ifは、Pythonではelifと書く。
a = input() if a%15==0: print "FizzBuzz" elif a%3==0: print "Fizz" elif a%5==0: print "Buzz" else: print a
while文は、while 条件式: のように書く。
a = 1 while a<100: if a%15==0: print "FizzBuzz" elif a%3==0: print "Fizz" elif a%5==0: print "Buzz" else: print a a+=1
for(int i=0; i
関数
defで宣言
def fib(n): if n>1: return fib(n-1) + fib(n-2) else: return 1 print fib(10)