とりあえず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)