not は非ブール演算子よりも優先度が低いので、 not a == b は not (a == b) と解釈され、 a == not b は構文エラーです。Cでは
a == !b
はa == (!b)
と解釈されるので,
Pythonでも同様だと思っていたが, 構文エラーになるらしい.
>>> a = True >>> b = False >>> a == not b File "なお, Awkではこうなる:", line 1 a == not b ^ SyntaxError: invalid syntax >>> a == (not b) True
$ :| awk 'BEGIN { a=1; b=0; print a==b; print a==!b }' 0 1
0 件のコメント:
コメントを投稿