Python 実践チャレンジ

このコースには、Python のための多数のチャレンジが含まれています。各チャレンジは、詳細な説明と解決策を備えた小さな Python プロジェクトです。これらのチャレンジを解くことで、Python のスキルを練習し、問題解決能力を向上させ、クリーンで効率的なコードの書き方を学ぶことができます。

Python

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

シラバス

Hello Python を出力しよう

時間を秒に変換する

年齢制限をチェックする

クローン兵を見つける

統計学習データ

実験記録のマージ

目標値に合計する整数のペアを見つける

作業ファイルの整理と分類

Requestsを使用したWebクローラーの開発

栄養情報の抽出

学習記録の保存

Conda 環境管理

Python の基本的な数学演算子

体重指数(BMI)計算機

Python を使ったハイキングトレイルの監視

うるう年チェッカーの Python チャレンジ

長い単語のカウンター

Python による回文チェッカー

100 未満の素数の合計

掛け算表の表示

処理時間計算ツール

Python 温度変換ツール

学校の成績評価システム

すべての偶数の合計

整数リストからターゲット式を見つける

レシピ推薦プログラム

コマンドライン計算機

Python を使った文書管理

経過時間計算器

Python の argparse を使ってカスタマイズされた挨拶を生成する

F-文字列で個人情報を表示する

小さなオンライン書店

大使館の訪問者追跡管理

シンプルなショッピングカート

浸透テストにおける暗号化と復号化

フルーツを使ったPythonスキル練習

Python を使った手作りの宝石の販売追跡

映画館のチケット

Web ページを開く処理の自動化

計算機のユニットテスト

文字列の中の繰り返し文字をカウントする

ローカルスコープとグローバルスコープ

数値演算用のマジックメソッド

文字列操作のためのマジックメソッド

三角形を表示する

Python クラスの継承

デコレータの力を解き放つ

TTL 機能付きプロパティデコレータの実装

数学式評価器

学校の出席管理システム

時間差計算器

光陰矢のごとし:タイムトライアル

アクセス ログ統計の分析

Tqdm の基本的な使い方

架空の人物を作成する

Python 電卓の作成

バスの乗客定員計算

JSON パーサーを完成させる

データ型のカウント

母音の数を数える

Python イテレータを作成する

データ型の操作

水分摂取追跡アプリを開発する

辞書のキーと値の入れ替え

2 つのリストの共通部分を見つける

消防署警報システム

食料品リスト生成器

ホテル部屋の空き状況チェッカー

辞書のようなオブジェクトを作成する

リストのようなオブジェクトを作成する

セットのようなオブジェクトを作成する

Pil を使った画像操作

マルチスレッドのマーケットプレイスシミュレーション

大規模データセットの並列計算

マルチプロセッシングを使った Python の並列処理

郵便番号割り当てプログラム

代入式の練習

Python のセットの共通部分関数

Pathlib を使った Python スタイルのファイルパス管理

リアルタイムデータ処理システム

正規表現のマスタリー

学校登録システム

学校試験の分析

学校の試験採点

Pythonic なコードへの簡素化

ソリティア入力と文字列処理

Python のセイウチ演算子による問題解決

decimal モジュール

Unicode データの可能性を解き放つ

町の市長選の投票システム

Python を使った倉庫在庫管理

Beautifulsoup を使った Web スクレイピング

Python を使った通貨交換

エラーと例外のハンドリング

ファイル操作の達人

テキストデータを活用しよう

JSON ファイルの操作

SOS 信号を送信する

タイムゾーン変換器

トークンベースのユーザ認証の実装

はじめに

Python 実践チャレンジは、Python の知識を動く解決策に変える 104 個の独立したコーディング問題を収録しています。計算、条件分岐、文字列、コレクションなどの小さな課題から始まり、コマンドラインツール、オブジェクト指向設計、ファイル処理、Web データ、並行処理へ広がります。

各問題では実装すべき結果が示され、自動チェックと、挑戦後に確認できる解答が用意されています。53 個の Beginner、47 個の Intermediate、4 個の Advanced チャレンジにより、継続的な練習にも特定技能の確認にも利用できます。

学習内容

  • 短い要件を、検証可能な結果を返す Python プログラムに変換する
  • 計算、分岐、反復、文字列、コレクション、検索の問題を解く
  • 関数、イテレータ、クラス、特殊メソッド、継承、プロパティ、デコレータを設計する
  • テキスト、正規表現、JSON、ログ、パス、ファイル、日時、タイムゾーンを解析・変換する
  • コマンドラインツールを作成し、入力検証、例外処理、単体テストを実践する
  • Requests、Beautiful Soup、Pillow、tqdm、SQLite、conda など指定されたライブラリやツールを使う
  • スレッド、マルチプロセス、非同期プログラミングを並行タスクに適用する
  • 自分の実装を解答と比較し、自動フィードバックを利用して修正する

このコースの対象者

Python の基本構文をすでに理解し、十分な問題解決練習を行いたい人向けです。初心者は短い入門問題から始め、経験者はデコレータ、ファイル処理、Web スクレイピング、認証、並行処理などの中上級問題を選べます。

前提知識: 簡単な Python スクリプトを作成・実行でき、変数、条件分岐、ループ、関数、文字列、一般的なコレクションを理解している必要があります。高度な問題では該当テーマの知識が前提であり、テスト前にすべてを基礎から説明するコースではありません。

学習環境: 大半のチャレンジはエディタとターミナルを備えた Ubuntu 22.04 WebIDE で、4 個は Ubuntu 22.04 VNC デスクトップで実行します。開始ファイル、テスト、必要な素材が提供され、一部では Beautiful Soup、Pillow、aiohttp、Requests、pytz、tqdm などをインストールします。

よくある質問

104 個すべてが初心者向けですか?

いいえ。内訳は Beginner 53 個、Intermediate 47 個、Advanced 4 個です。コースレベルは入りやすい開始地点を示しますが、後半にはデコレータ、引数解析、スレッド、マルチプロセス、非同期コードを要する問題があります。

ガイド付きレッスンですか、それとも自力で解く問題ですか?

まず自力で解く形式です。要件と開始素材を受け取り、結果を実装して自動チェックを実行します。各タスクステップに解答があるため、自分で試した後に方法を比較できます。

順番どおりに進める必要がありますか?

いいえ。各問題は独立しており、一つの累積型アプリを構成していません。必要な Python の概念を理解していれば、基礎から始めることも、テーマや難易度で選ぶこともできます。

大規模な総合プロジェクトはありますか?

ありません。一つの総合プロジェクトではなく、多数の自己完結した小規模シナリオを使い、言語機能、標準モジュール、指定された外部パッケージ、異なる問題形式を幅広く反復練習します。

講師

labby
Labby
Labby is the LabEx teacher.