2010-12-14 7 views
1

C/C++での(if ? then : else)形式の専門用語を忘れています。また、この構文はCython(PythonのC変種)でサポートされていますか?Cythonは三項スタイルif文をサポートしていますか?

Cythonがこの機能をサポートしているかどうか調べるために技術的な名前を知る必要があります。

更新日:Cythonがこれをサポートしているかどうかは知っていますか?

ソリューション:cython/Pythonで、これは(b if a else c)のように書かれているがそれは多くの場合、三項演算子、またはインラインもし呼ばれています(a ? b : c)

+0

私はこれが二枚貝だと言いますが、私はあなたがその重複を検索できないというあなたのせいではありません。 –

答えて

6

これは、条件付き演算子と呼ばれます。それはしばしば三項演算子と呼ばれますが、三項演算子は必ずしも条件演算子に固有のものではありません(実際には通常はそうです)。

編集:Cythonが(x ? y : z)をサポートしているかどうかに関しては、いくつかの予備的なグーグルに基づいていないようです。しかし、Python(と理論的にはCythonだと思いますか?免責:私はCythonを使用しません)は、(y if x else z)と同じ結果(if/else式)をサポートしています。編集2:私が見つけたCythonのドキュメントでは、通常のPythonと同じように動作すると言われています。

+0

それらの編集は私が探していたものです。ありがとう。 – unixman83

1

と比較します。

+1

これは三項演算子です。あなたは '+' _the_バイナリ演算子を呼びますか? –

+2

@Chris *バイナリ演算子は明らかに '>>'です。 :o) – deceze

+0

@Chris:Cでは* only * 3進演算子ですが、 '+'は* only * 2進演算子ではありません。 –

0

3値演算子。

+0

これは三項演算子です。あなたは '+' _the_バイナリ演算子を呼びますか? –

関連する問題