AWS Lambda Python !!!
Mise à jour du week-end, Yoshida. AWS Lambda utilise Python car le nœud asynchrone est trop de technologie pour moi (je n'avais pas l'option de Java). J'ai écrit quelques fonctions AWS Lambda et, d'une manière ou d'une autre, j'ai compris comment les utiliser, j'ai donc résumé celles que j'utilise souvent.
import Le module à utiliser
nom du module d'importation
Importez au format. Il existe différents modules externes en Python qui peuvent être utilisés en les important. Je pense que boto3 est le plus utilisé dans AWS Lambda. boto est une version Python du SDK pour travailler avec les API AWS.
sample
import boto3
ec2 = boto3.resource('ec2')
Nom du module. Méthode ('Argument donné')
Vous devriez pouvoir l'utiliser si vous l'utilisez comme ça. Dans l'exemple ci-dessus, en stockant dans la variable [ec2], la méthode ec2 peut être utilisée dans ec2.hogehoge.
Utiliser des variables en Python
variable
variable= 'hogehoge'
Utilisez comme. Il n'est pas nécessaire de déclarer des types comme Java.
Puisqu'il n'y a pas de constantes en Python, il semble que les variables avec toutes les majuscules soient légalement des constantes.
Les variables de type liste sont utilisées comme suit
Tableau
array = ["hoge","fuga","bar"]
Le tableau utilise []. Puisque les éléments du tableau sont stockés à partir de 0, pour accéder à l'élément "hoge" dans l'exemple ci-dessus.
sample
array = ["hoge","fuga","bar"]
sample = array[0]
Si vous procédez ainsi, le numéro d'élément 0 (hoge) du tableau sera stocké dans sample.
__Ajout d'éléments au tableau __ Vous pouvez ajouter un élément à la fin d'un tableau (liste) en utilisant .append
array = ["hoge","fuga","bar"]
array.append("hogeeeee")
En faisant cela, le tableau sera
array = ["hoge","fuga","bar","hogeeeee"]
Ce sera.
__ Supprimer des éléments du tableau __ Vous pouvez supprimer les éléments du tableau (liste) en utilisant .pop. Supprime l'élément spécifié avec .pop (numéro d'élément). Si .pop () et le numéro d'élément ne sont pas spécifiés, la fin sera supprimée. .pop renvoie l'élément supprimé
array = ["hoge","fuga","bar","hogeeeee"]
var = array.pop()
array = ["hoge","fuga","bar"] var = "hogeeeee"
Ce sera comme ça.
__ Je souhaite conserver un ensemble de clés et de valeurs sous forme de tableau et spécifier les clés pour définir les valeurs __ Le type de dictionnaire est utilisé dans de tels cas.
dic = {"id":"i-hogehoge","type":"4xlarge"}
Je l'utilise comme ça. Contrairement au type de liste, il peut être utilisé comme type de dictionnaire en le plaçant entre {}.
Récupérer la valeur de la clé
dic = {"id":"i-hogehoge","type":"4xlarge"}
dic["id"]
i-hogehoge
Obtenez la valeur de la clé avec le nom du tableau __dictionary [nom de la clé] __.
Utilisez la fonction __len () __ pour obtenir le nombre premier total d'un tableau de type dictionnaire.
dic = {"id":"i-hogehoge","type":"4xlarge"}
dic_num = len(dic)
Pratique pour faire demi-tour avec une déclaration for __ Au fait, tous les dictionnaires, listes et taples sont compatibles avec len __
__ Ajouter / supprimer des éléments __
ajouter à
dic = {"id":"i-hogehoge","type":"4xlarge"}
dic["AZ"] = "a"
dic["type"] = "xlarge"
dic = {"id":"i-hogehoge","type":"xlarge","AZ":"a"}
Je vais l'ajouter comme ça. Notez que si vous spécifiez une clé qui n'existe pas, vous en créerez une nouvelle, Si vous spécifiez une clé qui existe déjà, elle sera écrasée.
Effacer Supprimer avec .pop (nom de la clé).
dic = {"id":"i-hogehoge","type":"4xlarge"}
dic.pop('type')
Lorsque vous utilisez une fonction en Python, utilisez def pour définir la fonction.
def
def sample1(content1, content2):
print(content1)
print(content2)
Ça ressemble à ça. Définissez les arguments à passer à la fonction entre () dans de. Vous pouvez en spécifier plusieurs en les séparant. Utilisez la fonction comme nom de fonction (argument 1, argument 2). Vous pouvez également renvoyer le résultat du traitement dans la fonction. Pour renvoyer le résultat, utilisez l'instruction return pour renvoyer le résultat du traitement de la fonction à l'appelant.
sample
def lambda_handler(event, context):
kansu_kekka = kansu1(hoge, hoge)
print(kansu_kekka)
def kansu1(hikisu1, hikisu2):
moji_1 = hikisu1
moji_2 = hikisu2
kekka = moji_1 + moji_2
return kekka
hogehoge
C'est une image comme. __ Si vous souhaitez renvoyer plusieurs valeurs, vous pouvez utiliser le type liste / taple / dictionnaire. __
kekka_array = [hoge, bar, fuga]
retrun kekka_array
Quelque chose comme ça. Les dictionnaires et taples ont le même sentiment
J'utilise personnellement AWS Lambda, et en tant qu'utilisation de for, cela ressemble à chacun des éléments de la liste. À propos de la méthode
array = ["hoge","fuga","bar","hogeeeee"]
count = len(array)
for i in range(0, count):
<Traitement que vous souhaitez répéter>
type = 't2.micro'
if type == 'm4.4xlarge':
print("NOOOOOOOOOOOO!!!!!")
elif type == 'm4.xlarge':
print("OK")
else:
print(type)
L'opérateur de comparaison ressemble à ceci
opérateur | sens |
---|---|
== | égal |
!= | Inégal |
> | grand |
>= | Grand ou égal |
< | petit |
<= | Petit ou égal |
Passons des bases de Python à l'histoire AWS Lambda. Cette phrase est la chose la plus mystérieuse lorsque j'ai touché pour la première fois à AWS Lambda (Python2.7).
Lors de l'exécution d'AWS Lambda, AWS Lambda exécute cette fonction dans le programme spécifié. Vous pouvez modifier le nom de cette fonction, mais si vous le faites, vous devrez renommer la fonction exécutable dans la console AWS Lambda. Sauf si vous avez une raison spécifique, vous devez utiliser ce nom par défaut. Le event spécifié dans l'argument stocke les informations transmises à AWS Lambda lorsque la fonction AWS Lambda est exécutée au format JSON.
Lorsque vous exécutez AWS Lambda de manière événementielle, certaines informations d'événement sont stockées dans cet événement, vous pouvez donc obtenir les informations souhaitées en explorant ce JSON.
Vous ne devriez pas vous soucier du contexte pour le moment. Vous pouvez obtenir des informations utiles comme décrit dans Objet de contexte (Python), Je suis confus. Gardez-le dans le coin de votre tête jusqu'à ce que vous en ayez besoin. Vous pouvez le vérifier lorsque vous l'utilisez. Un jour, un tel moment viendra.
Je l'ai écrit, mais si vous connaissez ce domaine et comment devenir fou avec JSON, je pense que vous pouvez faire le premier pas d'AWS Lambda.
J'ai déjà écrit à propos de JSON dans cet article, alors veuillez vous y référer.
J'ai un fort sens des notes personnelles, donc si je rafraîchis un peu plus, je l'écrirai sur le blog de l'ingénieur.
Recommended Posts