カテゴリ: AWS Lambda 更新日: 2026/05/01

【AWS】LambdaでPythonを使う方法【バージョン・requests・ログ出力対応】

262
【AWS】LambdaでPythonを使う方法【バージョン・requests・ログ出力対応】

先生と生徒の会話形式で理解しよう

生徒

「先生、AWS LambdaでPythonを使えるって聞いたんですけど、具体的にどうやって使えばいいんですか?」

先生

「LambdaはサーバーレスでPythonを動かせる便利なサービスです。バージョンの選び方や外部ライブラリの使い方、さらにログ出力の仕組みを理解すると、すぐに実用的な関数が作れるようになりますよ。」

生徒

「なるほど!PythonをLambdaで使うときに注意すべきポイントも知りたいです。」

先生

「それではLambdaでPythonを使う方法を、バージョン、requestsライブラリ、ログ出力対応まで丁寧に解説していきましょう。」

1. AWS LambdaでPythonを使うメリット

1. AWS LambdaでPythonを使うメリット
1. AWS LambdaでPythonを使うメリット

AWS LambdaでPythonを利用するメリットはたくさんあります。Pythonは文法がシンプルで初心者にも理解しやすく、データ処理やAPI開発に強いという特徴があります。さらにAWSが公式にPythonをサポートしているため、Lambdaとの相性が良いのも魅力です。

サーバーの管理をせずにPythonコードを実行できるため、APIの構築、データ変換、ファイル処理、外部サービスとの連携など、幅広い用途で利用されています。

2. LambdaでサポートされるPythonバージョン

2. LambdaでサポートされるPythonバージョン
2. LambdaでサポートされるPythonバージョン

LambdaではPythonの複数バージョンがサポートされています。例えば以下のようなバージョンです。

  • Python 3.7(サポート終了予定)
  • Python 3.8
  • Python 3.9
  • Python 3.10
  • Python 3.11

新しいバージョンを選ぶことで、最新のライブラリや機能を利用でき、セキュリティリスクも減らせます。AWS公式ドキュメントでは常に最新のサポート状況を確認できるので、開発前にチェックしておくと安心です。

3. Lambda関数でのPythonコードの基本構造

3. Lambda関数でのPythonコードの基本構造
3. Lambda関数でのPythonコードの基本構造

LambdaのPythonコードはシンプルです。基本的には関数lambda_handlerを定義し、その中でイベントを処理します。


import json

def lambda_handler(event, context):
    message = "Hello from AWS Lambda with Python!"
    return {
        "statusCode": 200,
        "body": json.dumps(message)
    }

このようにイベントを受け取り、結果を返すだけでAPIやバッチ処理が実現できます。

AWSの基本用語や仕組みを、図解でサクッと理解したい人には、 入門の定番書がこちらです。

AWSの基本が全部わかる教科書をAmazonで見る

※ Amazon広告リンク

4. requestsライブラリを使った外部API連携

4. requestsライブラリを使った外部API連携
4. requestsライブラリを使った外部API連携

Pythonの魅力は豊富なライブラリです。その中でもrequestsライブラリは外部APIと連携するときに必須です。ただし、Lambdaの標準環境にはrequestsが含まれていないため、自分でライブラリをパッケージングする必要があります。

方法1:Layerを使う

AWS LambdaのLayerを使ってrequestsを含めたライブラリを共有できます。

方法2:zipファイルに同梱

ローカルでrequestsをインストールし、依存ファイルごとzipにしてデプロイする方法もあります。


pip install requests -t ./python
zip -r myfunction.zip .

こうすることでLambda上でもrequestsが使えるようになり、APIとの通信が可能になります。

5. Pythonでのログ出力方法

5. Pythonでのログ出力方法
5. Pythonでのログ出力方法

Lambdaでログを出力する際には、標準ライブラリのloggingを利用します。ログは自動的にCloudWatch Logsに送信されるので、デバッグや監視に役立ちます。


import logging

logger = logging.getLogger()
logger.setLevel(logging.INFO)

def lambda_handler(event, context):
    logger.info("Lambda関数が実行されました")
    logger.debug(f"イベント内容: {event}")
    return {"statusCode": 200, "body": "ログ出力テスト"}

ログレベルを調整することで、必要に応じて詳細な情報を確認できます。INFO以上に設定しておけば、通常の運用で十分です。

6. LambdaでPythonを使うときの注意点

6. LambdaでPythonを使うときの注意点
6. LambdaでPythonを使うときの注意点

LambdaでPythonを利用するときにはいくつかの注意点があります。

  • 依存ライブラリはLayerやzipに同梱する必要がある
  • 実行時間の制限(最大15分)がある
  • メモリとタイムアウト設定によって処理性能が変わる
  • 最新バージョンのサポート状況を随時確認する必要がある

これらを意識して設計すれば、エラーを減らし効率的に開発を進められます。

7. 初心者におすすめの学習ステップ

7. 初心者におすすめの学習ステップ
7. 初心者におすすめの学習ステップ

PythonでLambdaを学ぶ初心者は、次の流れで練習するとスムーズです。

  1. コンソールでシンプルなHello Worldを作る
  2. ログを出力してCloudWatchで確認する
  3. requestsを使って外部APIと連携する
  4. DynamoDBやS3と組み合わせて小さなアプリを作る

この流れを踏むことで、LambdaとPythonの基本から応用まで自然に理解できるようになります。

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

AWS LambdaでPythonを使う一番のメリットは何ですか?初心者でも扱えますか?

一番のメリットは、サーバーの管理を一切行わずにPythonのプログラムを実行できる「サーバーレス」という仕組みにあります。Python自体が非常にシンプルで読みやすい文法を持っているため、プログラミング初心者の方でも理解しやすく、学習コストが低いのが特徴です。AWSが公式にPythonをサポートしているため、データの処理やAPIの開発、ファイルの自動変換、外部サービスとの連携など、幅広い用途で手軽に利用できるのが大きな魅力といえます。
AWS Lambdaの一覧へ
新着記事
Flutter
Flutterでのリポジトリパターンの実装例
Flutterでリポジトリパターンを実装する方法を完全解説!初心者向けアーキテクチャ設計入門
Java
Java の Objects クラスを使って null チェックを簡単にする方法
JavaのObjectsクラスの使い方を完全ガイド!nullチェックを簡単・安全に行う方法
Java
Java の UUID クラスを使って一意の識別子を作成する方法
JavaのUUIDクラスの使い方を完全ガイド!初心者でもわかる一意な識別子の作成方法
Java
Java の古い日付クラス(Date, Calendar)と新しい日付 API の違い
JavaのDateとCalendarと新しい日付APIの違いとは?初心者向け完全ガイド
人気記事
Java
Java の Random クラスを使ってランダムな数値を生成する方法
JavaのRandomクラスの使い方を完全ガイド!初心者でもわかる乱数生成
Java
Java の getter メソッドと setter メソッドの使い方
Javaのgetterメソッドとsetterメソッドの使い方を完全ガイド!初心者でもわかるアクセス方法
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
AWS
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク