AWS Lambdaでは、環境変数を文字列としてしか取得できません。しかし、配列として環境変数を扱いたい場合があります。そのような場合には、以下のようなコードを使用することができます。
import os
# 環境変数名を指定して値を取得し、カンマで分割して配列化します。
array = [x.strip() for x in str(os.getenv('環境変数名')).split(',')]
このコードは、指定した環境変数の値を取得し、カンマで分割して配列に変換します。さらに、strip()
関数を使用して余分なスペースも除去します。
また、AWS SAMのLambdaで環境変数を設定する際のyamlファイルは以下のようになります。
Resources:
Lambda:
Type: 'AWS::Serverless::Function'
Properties:
Handler: lambda_function.lambda_handler
Runtime: python3.6
CodeUri: .
MemorySize: 128
Role: Fn::GetAtt:
- LambdaRole
- Arn
Timeout: 3
Environment:
Variables:
環境変数名: 'val1, val2, val3'
このように、環境変数を配列として扱うことは、PythonとAWS Lambdaを使用する際の有用なテクニックです。このテクニックを活用することで、より柔軟なコードを書くことが可能になります。.