PYTHON

Pythonは素晴らしく、強力なプログラミング言語です。 使いやすく(読みやすくて書きやすい)て、ラズベリーパイと一緒であれば、 あなたのプロジェクトを現実世界とつなぐことができます。

Pythonの構文は非常にきれいで、読みやすさと基本的な英語のキーワードを使うことが重視されています。 デスクトップからIDLEを開くことから始めましょう。

IDLE

Pythonの最も簡単な導入は、Pythonの統合開発環境であるIDLEを使うことです。 デスクトップのアプリケーションメニューからIDLEを開いてください。

IDLEはREPL(Read-Evaluate-Print-Loop)を提供しますが、これはPythonコマンドを入力するためのコマンドプロンプトです。 REPLはprintを使用しなくてもコマンドの出力を画面に表示します。

Python2とPython3の2つのバージョンが使用可能です。 Python3は最新のバージョンであり推奨されています。 しかしながら、Python3をサポートしていない古いアプリケーションのためにPython2もまだ使用可能です。 このページの例ではPython2でも3でも使えます(Python 2 vs. Python 3を見てください)。

必要があれば変数を使うこともでき、また計算機のように使うこともできます。例えば、

>>> 1 + 2
3
>>> name = "Sarah"
>>> "Hello " + name
'Hello Sarah'

IDLEには構文のハイライト機能がついており、いくつかはオートコンプリートもサポートしています。 Alt + P(前回)とAlt + N(次回)で、 REPLに入力したコマンドの履歴をさかのぼって見ることができます。

基本的なPythonの使い方

PythonのHello worldは、

print("Hello world")

このようにシンプルです。

インデント

コード行を中括弧の{}で囲み、 このコード行にインデントをつけてネストになっていることを分かるようにするかどうかを 書き手に委ねる言語があります。 しかしながら、Pythonは中括弧は使わず、代わりに ネストさせるためにインデントをつけることが要求されます。 例えば、forループはPythonでは次のようになります。

for i in range(10):
    print("Hello")

このインデントは必要なものです。 2行目がインデントされている場合はループの中に入っていることになり、 2行目がインデントされていない場合はループの外ということになります。 例えば、

for i in range(2):
    print("A")
    print("B")

は下記のように表示されます。

A
B
A
B

それに対して次は、

for i in range(2):
    print("A")
print("B")

下記のように表示されます。

A
A
B

変数

数値を変数に保存するには、このように割り当てます。

name = "Bob"
age = 15

ここで、型は推定されるもので、変更(動的な)も可能なため、 これらの変数に型を割り当てていません。

age = 15
age += 1  # ageに1を足す
print(age)

今度は加算式の横にコメントをつけました。

コメント

コメントはプログラム内で無視されますが、ここでは#記号と 同じ意味の方法を示します。 複数行のコメントには3つの引用符を次のように使います。

"""
これは"Hello"と表示するPythonの簡単なプログラムです。
このプログラムがするのはそれだけです。
"""

print("Hello")

リスト

Pythonには任意の型のデータ集合であるリスト(配列と呼ばれることもあります)も存在します。

numbers = [1, 2, 3]

リストは角括弧[]で表現し、 それぞれの項目はカンマで区切ります。

繰り返し

データ型には繰り返し処理ができるものがあり、 それらが含む値に対してループができるということを意味します。

numbers = [1, 2, 3]

for number in numbers:
    print(number)

これはnumbersのそれぞれの要素を取り出して表示します。

1
2
3

それぞれの要素を表すためにnumberという名前を使いました。 これはただ単に例示のための名前であり(変数の意味を表す名前を選ぶことをおすすめします)、 リストには複数系を、それぞれの要素には単数系を使用することで意味のある名前になります。 これにより読んだときに理解しやすくなります。

他のデータ型では例えば文字列が繰り返し可能です。

dog_name = "BINGO"

for char in dog_name:
    print(char)

これは、それぞれの文字をループして表示します。

B
I
N
G
O

範囲

整数型は繰り返しできず、もし繰り返ししようとしたらエラーが発生します。例えば、

for i in 3:
    print(i)

は次のエラーになります。

TypeError: 'int' object is not iterable

しかしながら、range関数を使用すれば、繰り返し可能なオブジェクトを作ることができます。

for i in range(3):
    print(i)

range(5)は数字の01234を含みます(合計5つの数字)。 1から5の数字を得るためにはrange(1, 6)を使います。

長さ

文字列やリストの長さを確認するのにlenという関数が使用できます。

name = "Jamie"
print(len(name))  # 5

names = ["Bob", "Jane", "James", "Alice"]
print(len(names))  # 4

IF文

フロー制御にはif文を使用できます。

name = "Joe"

if len(name) > 3:
    print("Nice name,")
    print(name)
else:
    print("That's a short name,")
    print(name)

IDLE内でのPythonファイル

IDLEでPythonファイルを作るには、File > New Fileをクリックすると 空のウインドウが開きます。これは空のファイルであり、Pythonプロンプトではありません。 このウインドウ内でPythonファイルを書いて保存し、 それから実行すると別のウインドウで出力を確認できます。

例えば、新しいウインドウで下記を入力してください。

n = 0

for i in range(1, 101):
    n += i

print("The sum of the numbers 1 to 100 is:")
print(n)

それからファイルを保存(File > SaveもしくはCtrl + S)し、 実行(Run > Run ModuleもしくはF5)すると、 元のPythonウインドウで出力が確認できます。

コマンドラインからPythonファイルを実行する

VimやNano、LeafPadとのような一般的なエディタでPythonファイルを書いて、 コマンドラインからPythonスクリプトとして実行することができます。 保存したファイルのディレクトリに移動(cdlsを使う)し、 pythonで実行します。 例えば、python hello.pyです。

さらなる情報

さらに高度な情報に書いてあることを参照してください。

  • Python 2 vs. Python 3
  • 慣習
  • Pythonの他の使い方
  • Pythonライブラリのインストール
  • GPIO

プリンストール済みのPythonゲームを実行するページも確認してみてください。

Pythonのドキュメント

Pythonの完全なドキュメントはpython.org/docで利用可能です。

このページについて

このページはラズベリーパイ財団が権利を保有するRaspberry Pi Documentation五十嵐システムズが日本語訳したものです。
Creative Commons Attribution 4.0 International Licenceのもとで公開されております。
原文はhttps://github.com/raspberrypi/documentationの成果によって作成されています。

なお、このページは2015年6月に翻訳しており、それ以後の更新内容は翻訳に反映していないため、内容が原文とは異なる場合があります。