タグ付けされた質問 「if-statement」

「if」ステートメントは、ほとんどのプログラミング言語のフロー制御構造であり、バイナリ条件に応じて実行フローを分岐し、通常は実行時に評価されます。ifステートメントは一般的に条件付きとも呼ばれます。このタグを使用するときは、質問が言語固有である場合は「java」などの適切な言語タグも含めてください。

15
「aまたはbまたはcのすべてではない場合」のPython構文
ゼロまたは3つのコマンドライン引数を受け取ることができるpythonスクリプトがあります。(デフォルトの動作で実行するか、3つの値すべてを指定する必要があります。) 次のようなものの理想的な構文は何ですか? if a and (not b or not c) or b and (not a or not c) or c and (not b or not a): ?

9
None値とは何ですか?
私はPythonを研究していて、そのNone値について説明している章を読みましたが、残念ながら、この本はいくつかの点であまり明確ではありません。そこで質問を共有すれば、答えが見つかると思いました。 None価値とは何か、それを何に使うのか知りたいですか そしてまた、私は本のこの部分を取得しません: 変数に値を割り当てることはNone、変数を元の空の状態にリセットする1つの方法です。 どういう意味ですか? 答えは素晴らしかったですが、コンピュータの世界についての知識が低いため、ほとんどの回答を理解できませんでした(クラスやオブジェクトなどについてはまだ知りません)。この文はどういう意味ですか? 変数に値を割り当てることはNone、変数を元の空の状態にリセットする1つの方法です。 最後の: 最後に、私はさまざまな答えを探すことから私の答えを得ました。私を助けるために時間を費やしてくれたすべての人々(特にMartijn PietersとDSM)に感謝しなければなりません。すべての回答を最高のものとして選択できればいいのですが、選択は1つに制限されます。答えはすべて素晴らしかった。

15
中括弧なしでifステートメントを使用することは悪い習慣ですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 5年前休業。 この質問を改善する 私はこのようなコードを見てきました: if(statement) do this; else do this; しかし、これはもっと読みやすいと思います: if(statement){ do this; }else{ do this; } 両方の方法が機能するので、これは単にどちらを使用するかという好みの問題ですか、それとも他の方法よりも推奨されますか?

5
環境変数が存在するかどうかを確認するための良い方法は何ですか?
私の環境で、"FOO"Pythonなどの変数の存在を確認したいと思います。この目的のために、私はos標準ライブラリを使用しています。ライブラリのドキュメントを読んだ後、目標を達成するための2つの方法を見つけました。 方法1: if "FOO" in os.environ: pass 方法2: if os.getenv("FOO") is not None: pass どちらの方法が良い/好ましい条件付きであるか、およびその理由を知りたいのですが。


15
IFステートメント:条件がfalseの場合にセルを空白のままにする方法(“”は機能しません)
条件がFALSEの場合にセルを空白のままにするIFステートメントを記述したいと思います。たとえば、次の数式がC1に入力された場合(条件がfalseの場合)に注意してください。 =IF(A1=1,B1,"") C1が空白であるかどうかをテストした場合、C1が空白であるように見えても=ISBLANK(C1)、これはを返しFALSEます。これは=IF(A1=1,B1,"")、条件が満たされない場合、数式が技術的にセルを空白のままにしないことを意味します。 それを達成する方法について何か考えはありますか?おかげで、

11
if-elif-elseステートメントを1行に記述しますか?
以下のリンクを読みましたが、私の質問には対応していません。 Pythonには三項条件演算子がありますか?(問題はif-elseステートメントを1行に圧縮することです) 1行に収まるようにif-elif-elseステートメントを書く簡単な方法はありますか? 例えば、 if expression1: statement1 elif expression2: statement2 else: statement3 または実際の例: if i > 100: x = 2 elif i < 100: x = 1 else: x = 0 上記の例を次のように書くと、もっと簡潔に見えるかもしれません。 x=2 if i>100 elif i<100 1 else 0 [WRONG]


3
if(0)を使用して、動作するはずのスイッチのケースをスキップしていますか?
C ++のswitchステートメントの2つのケースで、両方とも3番目のケースに分類したいという状況があります。具体的には、2番目のケースは3番目のケースにフォールスルーし、最初のケースも2番目のケースを通過せずに3番目のケースにフォールスルーします。 私はばかげた考えを持っていて、それを試しました、そしてそれはうまくいきました!2番目のケースをif (0) {...で包みました}。次のようになります。 #ifdef __cplusplus # include <cstdio> #else # include <stdio.h> #endif int main(void) { for (int i = 0; i < 3; i++) { printf("%d: ", i); switch (i) { case 0: putchar('a'); // @fallthrough@ if (0) { // fall past all of case 1 (!) …

30
4つのブール値がいくつかのケースに一致するかどうかをチェックするロジックを改善する方法
私には4つのbool値があります。 bool bValue1; bool bValue2; bool bValue3; bool bValue4; 許容値は次のとおりです。 Scenario 1 | Scenario 2 | Scenario 3 bValue1: true | true | true bValue2: true | true | false bValue3: true | true | false bValue4: true | false | false したがって、たとえば、このシナリオは受け入れられません。 bValue1: false bValue2: true bValue3: true bValue4: …
118 c++  if-statement 


11
文字列が有効な整数かどうかをテストします
私は十分に一般的なことをしようとしています:シェルスクリプトでユーザー入力を解析します。ユーザーが有効な整数を指定した場合、スクリプトは1つの処理を実行し、無効な場合は別の処理を実行します。問題は、これを行う簡単な(そして合理的にエレガントな)方法を見つけていないことです。1文字ずつ個別に選択する必要はありません。 これは簡単なはずですが、方法はわかりません。私は12の言語でそれを行うことができましたが、BASHはできませんでした! 私の研究でこれを見つけました: 文字列が10進数の有効な実数で構成されるかどうかをテストする正規表現 そして、そこには正規表現についての答えがありますが、私の知る限り、それはCで利用可能な関数です(とりわけ)。それでも、すばらしい答えのように見えたので、grepで試してみましたが、grepはそれをどうするかわかりませんでした。私の箱では、それをPERL正規表現として扱うことを意味する-Pを試しました-nada。ダッシュE(-E)も機能しませんでした。また、-Fも行いませんでした。 明確にするために、私はこのようなものを試して、出力を探しています-そこから、取得したものを利用するためにスクリプトをハッキングします。(IOW、有効な行が繰り返されている間は、非準拠の入力が何も返さないことを期待していました。) snafu=$(echo "$2" | grep -E "/^[-+]?(?:\.[0-9]+|(?:0|[1-9][0-9]*)(?:\.[0-9]*)?)$/") if [ -z "$snafu" ] ; then echo "Not an integer - nothing back from the grep" else echo "Integer." fi これを最も簡単に行う方法を誰かが説明してくれませんか? 率直に言って、これは私の意見ではTESTの欠点です。このようなフラグが必要です if [ -I "string" ] ; then echo "String is a valid integer." else echo …

3
PHPでの型変換と(厳密な)大なり/小なり比較
PHPは型ジャグリングで有名です。私はそれが私を困惑させることを認めなければなりません、そして私は比較で基本的な論理的/基本的なものを見つけるのに苦労しています。 例:Ifは$a > $btrueで、$b > $c真のですが、それはそれが意味する必要があります$a > $cあり、常にあまりにも本当? 基本的なロジックに従って、私はイエスと言いますが、私はこれに本当にPHPを信頼していません。たぶん、誰かがこれが当てはまらない例を提供できますか? また、私は厳密な小なり演算子と大なり演算子(それらの意味は過去に等価比較からのみ知っていたものとして説明されているので)で左右のオペランドが入れ替えられた場合に違いがあるかどうか疑問に思っています厳密に等しくない値: # Precondition: if ($a === $b) { throw new Exception( 'Both are strictly equal - can not compare strictly for greater or smaller' ); } ($a > $b) !== ($b > $a) ほとんどすべてのタイプ比較の組み合わせでは、これらの大小比較演算子は文書化されていないため、この場合はマニュアルを読んでもあまり役に立ちませんでした。

4
MySQLクエリのIF条件でカウントする
2つのテーブルがあります。1つはニュース用で、もう1つはコメント用で、ステータスが承認済みに設定されているコメントの数を取得したいと思います。 SELECT ccc_news . *, count(if(ccc_news_comments.id = 'approved', ccc_news_comments.id, 0)) AS comments FROM ccc_news LEFT JOIN ccc_news_comments ON ccc_news_comments.news_id = ccc_news.news_id WHERE `ccc_news`.`category` = 'news_layer2' AND `ccc_news`.`status` = 'Active' GROUP BY ccc_news.news_id ORDER BY ccc_news.set_order ASC LIMIT 20 ただし、このクエリの問題は、そのニュースに対応するコメントが存在するかどうかに関係なく、コメント列に対してフェッチされる最小値が1であることです。 どんな助けも高く評価されます。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.