ものづくりブログ

ゼロからスタートして何かを作って世に出すまでのことを書くブログです.

Pythonの実行方法と基本構文

こんにちは.



以前の記事MacPythonの開発環境を構築しました.
今回はそれを少し使ってみようと思います.



1. プログラムの実行

まずはプログラムの実行方法を見てみます[1].お好きなテキストエディタで以下のように入力し,ファイル名を「test01.py」として適当なフォルダに保存してください.

print "Hello World"

ターミナルで今ファイルを保存したフォルダに移動してください.私の場合は/Users/ユーザ名/Develop/PythonPracticeに保存したので,以下のようになります.

cd /Users/ユーザ名/Develop/PythonPractice
※ユーザ名の箇所は,ご自分のユーザ名に合わせてください.

移動できたら下記のコマンドを実行します.

python test01.py

以下のように表示されたら成功です.

Hello World

次に,別の方法でPythonを実行してみます.
以下のコマンドを実行します.

Python

するとPythonコマンド入力待ち受け状態になるので,そこに以下のように入力します.

print "Hello world test"

以下のように表示されたら成功です.

Hello world test

このように,Pythonではいちいちソースファイルを作らなくとも対話形式で簡単な動作テストくらいであればターミナル上だけで実施が可能です.

対話モードから抜けるときは,exit()と打ち込んでEnterを押すか,control+Dを入力します[2].



2. 基本構文を理解する

次にもう少し複雑なプログラムを書いて,基本構文を理解しましょう.
以下のURLからファイルをDLし,「test02.py」という名前で先ほどと同じフォルダに保存してみましょう.

https://bitbucket.org/Daisukekmr/pythonpractice/downloads/test02.py

保存できたらそのフォルダに移動し,またさっきと同じように実行してみます.

cd Users/ユーザ名/Develop/PythonPractice
python test02.py

以下のように表示されたら成功です.

モジュールのロード
Hello world
関数:testを呼び出しました

それではtest02.pyをテキストエディタで開いて,部分ごとに内容を見て行きます.

# -*- coding: utf-8 -*-

print u"モジュールのロード"

def test():
    print u"関数:testを呼び出しました"

if __name__ == "__main__":

     print "Hello world"
#   print "はろーわーるど"
     test()

1行目はエンコードの宣言を行っています.今回は半角アルファベットのみでなく日本語(2バイト文字)が含まれているので,この宣言を行わないとエラーに成ってしまいます.

# -*- coding: utf-8 -*-

次に3行目(2行目は空行なので)ですが,printのあとにuが入っています.これは1行目で宣言したエンコードを使うという意味です.

print u"モジュールのロード"

5行目は関数を定義しています.関数とは,よく使う機能をモジュールとして作っておき,あとから呼び出すという使い方をします.C言語などでは関数は{}でくくるのですが,Pythonでは{}は使わず,中身を1段右にずらすことで表現します.このため,6行目は1段ずれて表記されています.

def test():
    print u"関数:testを呼び出しました"

8行目はちょっとむずかしいので追々理解していけば良いと思いますが,他のモジュールから呼び出された時に実行されないという意味です.ここは飛ばしてしまいましょう.

if __name__ == "__main__":

10行目は先程も出てきたprintですね.11行目のprintですが,実行結果では表示されませんでした.これは#によってコメントアウトされていたためです.

     print "Hello world"
#   print "はろーわーるど"

12行目は先ほど定義した関数を呼び出しています.test()という関数の中身は「関数:testを呼び出しました」と表示するというものでしたので,実行結果ではそのように表示されています.

     test()

これがPythonの基本構文です.ここまでわかってしまえばあとはある程度進めると思いますので,次回は勉強に役立つサイトの紹介です.



参考文献
[1]Python-izm (http://www.python-izm.com/contents/introduction/execution.shtml)
[2]PyCon JP 2012 Pythonプログラミングハンズオン(初級者向け)「動かしてみよう」(http://pyconjp2012-python-for-beginners.readthedocs.org/en/latest/start_python.html)