home Glamenv-Septzen(ぐらめぬ・ぜぷつぇん)(archive)

Python/無視される空行について

作成日: 2009-02-22 20:39:59   /   last updated at: 2009-02-22 20:52:17
カテゴリ: Python 

Pythonリファレンスマニュアルの言語仕様で「空行」というページがあります。
http://www.python.jp/doc/release/ref/blank-lines.html :

スペース、タブ、フォームフィード、およびコメントのみを含む論理行は無視されます
(すなわち、NEWLINE トークンは生成されません)。

こんな感じです。分かりやすくする為、タブ文字を \t で丸括弧で示しています。空白のインデントはアンダースコア(_)で示しています。

for x in range(5):
(\t)print x,
#comment
________# comment
____
(\t)(\t)(\t)# comment

(\t)print x,


0 0 1 1 2 2 3 3 4 4

結果はOKです。同じ実行ブロックとして2回ずつ同じ数値が表示されています。
面白いのは二回目表示のprintの直前で、これは空白もタブ文字も何もない、本当の空行です。これもちゃんと読み飛ばしてくれるんですね。

ちなみにフォームフィードは "\f" らしいですが、どうやってそんなの入力するんだよとか、そもそも初めて目にする制御文字で「次ページの先頭へ移動するようプリンタに指示するための制御文字」らしいのですが今時使わないんじゃないの?と、激しく謎ですが使わないので置いておきます。


original url: https://www.glamenv-septzen.net/view/187