Pythonの条件節
■比較の連鎖
Pythonでは以下のように比較を連続して記述できる。
a = 3
b = 5
c = 7
if(a < b < c):
print('hoge');
#hoge
ちなみにPHPではできない。
$a = 3;
$b = 5;
$c = 7;
if($a < $b < $c){
print('hoge');
}
//Parse error: syntax error, unexpected '<'
■条件節の中の代入文
Pythonでは以下のように条件節で代入文を記述することはできない。
b = [0, 3, 5]
if((a = b[1]) > 0):
print('hoge')
#SyntaxError: invalid syntax
これについては公式マニュアルで以下のように説明されている。
Python では、C 言語と違って、式の内部で代入を行えないので注意してください。 C 言語のプログラマは不満を呈するかもしれませんが、この仕様は、 C 言語 プログラムで遭遇する、式の中で == のつもりで = とタイプ してしまうといったありふれた問題を回避します。
ちなみにPHPではできる。
$b = array(0, 3, 5);
if(($a = $b[1]) > 0){
print('hoge');
}
#hoge
TrackBack URL :
Comments (0)
コメントはまだありません»
コメントはまだありません。
この投稿へのコメントの RSS フィード。TrackBack URL
コメントする