Pythonを無料で独学できるKaggleのCourses|Booleans and Conditionals_Exercise

スポンサーリンク
Kaggle
初心者に人気のプログラミング言語Pythonは独学可能か?
Pythonは非常に人気のあるプログラミング言語で、まったくの初心者でも独学が可能と言われています。 Pythonはさまざまな目的に使える、汎用性のあるプログラミング言語です。 プログラミングは「独学が難しい」と言われていま...
Kaggle: Your Machine Learning and Data Science Community
Kaggle is the world’s largest data science community with powerful tools and resources to help you achieve your data science goals.

Pythonを学びたいと思っている方に非常におすすめな学習方法があります。それは、KaggleのCoursesです。特徴としては、以下のものがあります。

  • 無料
  • 面倒な環境設定なく
  • 解説付きで
  • 体系的に学習できる

これは、活用しないわけにはいかないですよね。ただ、このKaggleのCoursesは、英語で書かれています。なので、英語が苦手な初学者にはハードルが高いと感じるかもしれません。なので、日本語でコードの解説をしていきます

まずは、以下の記事を参考に、KaggleのCoursesで独学する方法を解説しています。

Kaggle Courses|Pythonを無料で独学できる超簡単な方法

今回は、KaggleのCoursesの各論として、Python偏の「Booleans and Conditionals」の「exercise」を解説していきます。

Booleans and Conditionals (exercise)

この演習では、booleans(True , False)と条件式について学んだことを実践してみましょう。

まずは、自分のコードを書く前に、以下のセットアップコードを実行してください

準備が整いましたので、演習問題を行っていきましょう。

1.

多くのプログラミング言語では、組み込み関数としてsignが用意されています。Pythonにはありませんが、自分で定義することができます。

下のセルで、signという関数を定義してください。この関数は、数値の引数を取り、それが負の場合は「-1」、正の場合は「1」、0の場合は「0」を返します。

「if」、「elif」、「else」で条件を定義し、「return」で出力する値を設定しています。

2.

前回の演習で作ったto_smash関数に「logging」を追加することにしました。

下のセルの定義を修正して、print文の文法を修正してください

キャンディが1つしかない場合は、複数形の「candies」ではなく、単数形の「candy」を使用する必要があります

この問題をクリアしたことを認めてもらい、公式の答えを見るには、以下のコードセルを実行してください。

以下のコードを実行して、正解を確認してみましょう。

別の書き方を教えてくれます。こちらの方が1行で書けるので、簡単ですね。

3. 🌶️

チュートリアルでは、天気に備えているかどうかを判断することについて話しました。私は、今日の天気が安全なのは…

  • 傘を持っている
  • または、雨がそれほど強くなく、フードがあれば…。
  • そうでなければ、雨が降っていても仕事の日でない

以上の条件であれば、問題ないです。

以下の関数は、このロジックをPythonの式に変換する最初の試みを使用しています。このコードにはバグがあります。あなたはそれを見つけることができますか?

「prepared_for_weather」がバグっていることを証明するために、次のいずれかの入力セットを考えてください。

関数がFalseを返す(しかしTrueを返すべきだった)、または
関数がTrueを返した(しかしFalseを返すべきだった)。
この問題を解くためには、あなたのコードは正しい結果を返さなければなりません。

当然、このままではエラーになってしまいます。

条件通りにするプログラムはどうすればいいでしょうか。

これで解決しましたね。一応回答を確認してみましょう。

True値は、「True」でも「1などの数値」でもいいです。

False値は、「False」でも「0」でもいいです。

4.

下記の関数is_negativeは正しく実装されています。与えられた数値が負の場合はTrueを、そうでない場合はFalseを返します。

しかし、必要以上に冗長になっています。実際には、同じ動作を維持したまま、この関数のコード行数を75%減らすことができます。つまり、1行にできるということ。

たった1行のコードで同等の処理ができるかどうか試してみて、それを2つめの関数 concise_is_negative に入れてみましょう。

値がおより小さいかどうかを判断させれば、1行で済みますね。

5a.

ケチャップ(ketchup)、マスタード(mustard)、オニオン(onion)というブーリアン変数は、お客様がホットドッグに特定のトッピングをしたいかどうかを表します。お客様の注文に関する質問に対応するいくつかのブール関数を実装したいと思います。例えば、以下のようなものです。

「True」「False」、「1」「0」どちらでも正しく判断してくれます。

5b.

次の関数では、docstringの英語の記述(””)に合わせてコードを記入してみましょう。

5c.

次の関数では、docstringの英語の説明(”””)と一致するようにコードを記入てみましょう。

6. 🌶️

整数に対してbool()を呼び出すと、0に等しい場合はFalseを、そうでない場合はTrueを返すことを見てきました。boolに対してint()を呼び出すとどうなるでしょうか?

下のノートブックセルで試してみてください。

これを利用して、「お客さんはトッピングを1つだけ欲しいか」という英文に対応する簡潔な関数を書くことができますか?

Python初心者がデータサイエンティストになるために必要な書籍

【Python初心者でも分かる】データサイエンティスト協会の100本ノック|ダウンロードから読み込みまで

Booleans and Conditionals_解説編

Functions and Getting Help_演習編

Functions and Getting Help_解説編

Lists_解説編



コメント

タイトルとURLをコピーしました