Explication de Lambda pour les débutants en Python.
--Lambda Blueprint Explication: Lambda Common Edition (Python): http://qiita.com/tcsh/items/e119d7fd8257e15e599b
--Lambda: # 16 sns-message (version Python): http://qiita.com/tcsh/items/c776221b000e5f921fcc --Lambda: # 15 canari (version Python): http://qiita.com/tcsh/items/15815f61df418fbe6be7
La fin de la ligne est ignorée en tant que commentaire de \ #.
python:code(Commentaire de ligne):
word = 'hello' #Mot cible
Lorsque vous commentez plusieurs lignes, insérez la partie de commentaire avec trois guillemets simples ou doubles à la même position que le retrait de la ligne précédente. (Comme il est traité comme une chaîne de caractères, il n'est pas exécuté.)
python:code(Commentaire multi-lignes de facto):
def validate(res):
'''[d'ici] Return False to trigger the canary
Currently this simply checks whether the EXPECTED string is present.
However, you could modify this to perform any number of arbitrary
checks on the contents of SITE.
[Jusque là]'''
return EXPECTED in res
Python ne prend pas en charge les constantes.
Il est courant d'écrire les constantes en majuscules (apparemment).
python:code(Exemple):
SITE = 'https://www.amazon.com/' # URL of the site to check
EXPECTED = 'Online Shopping' # String expected to be on the page
Si déclaré en dehors de la fonction, la portée sera le module entier (fichier).
Vérifiez si une valeur existe.
python:code(Exemple d'utilisation dans la valeur de retour d'une fonction):
return EXPECTED in res
Vérifie si la chaîne définie par la constante EXPECTED existe dans l'objet res.
from: indiquez le nom du package ou du module.
import: spécifiez le nom du package ou du module, le nom de la classe ou de la fonction, le nom de la variable, etc.
python:Importer l'objet de fonction datetime à partir du module datetime:
from datetime import datetime
python:module urllib2(Pour Python 2)Importez l'objet de fonction urlopen depuis:
from urllib2 import urlopen
Remarque: Le module urllib a été divisé en urllib.request, urllib.parse, urllib.parse en Python3.
Permet à Python2 d'utiliser des fonctionnalités implémentées dans Python3 et incompatibles avec Python2.
python:code(Exemple):
from __future__ import division
from __future__ import absolute_import
from __future__ import print_function
from __future__ import unicode_literals
from future_builtins import *
Remarque: depuis future import * ne peut pas être défini.
En Python2, c'était une instruction print, mais en Python3, c'est devenu une fonction print ().
En écrivant ce qui suit, vous pouvez utiliser print () compatible avec Python3.
python:code(Exemple):
from __future__ import print_function
En Python3, print () imprime le contenu de l'objet string.
python:code(Exemple):
print('hoge')
print('hoge' + variable_a)
print('a: [', variable_a, ']')
python:code(Exemple de spécification de fin d'impression):
print('hoge', end='')
python:code(Exemple de sortie de fichier):
f = open('test.txt', 'w')
print('hoge', file=f)
La méthode contenue dans l'objet datetime. Offre la possibilité de renvoyer la date et l'heure locales actuelles.
python:code(Exemple):
datetime.now()
python:résultat(Exemple):
datetime.datetime(2016, 5, 29, 18, 52, 57, 727727)
Remarque: année, mois, jour, heure, minute, seconde, microseconde
Renvoie une chaîne qui représente l'objet sous une forme imprimable.
python:code(Exemple):
print(str(datetime.now()))
python:résultat(Exemple):
2016-05-29 18:52:57.727714
Objets inclus dans le module urllib2. Offre la possibilité de récupérer du contenu sur le Web.
Puisque la réponse obtenue est un objet de type fichier, elle peut être lue par read ().
python:code(Exemple):
if not validate(urlopen(SITE).read()):
Les utilisateurs peuvent définir leurs propres fonctions.
python:syntaxe:
nom de la fonction def(argument):
La description
return Valeur de retour
S'il n'y a pas de déclaration de retour, il renvoie "Aucun".
python:code(Exemple):
def validate(res):
# (snip)
return EXPECTED in res
--Argument: res
python:code(Exemple):
def lambda_handler(event, context):
# (snip)
--Arguments: événement et contexte
Il peut être ramifié selon les conditions.
python:syntaxe:
if (conditions):
La description
elif (conditions):
La description
else:
La description
python:échantillon:
if not validate(urlopen(SITE).read()):
raise Exception('Validation failed')
Vous pouvez obtenir une exception et la gérer au fur et à mesure qu'elle se produit.
python:syntaxe:
try:
Description pouvant provoquer une exception
except:
Description lorsqu'une exception se produit(Plusieurs descriptions peuvent être faites pour chaque type d'exception)
Exception intégrée: http://docs.python.jp/2/library/exceptions.html
else:
Description lorsqu'aucune exception ne se produit
finally:
Une description de l'action qui est toujours effectuée avant de quitter l'instruction try, indépendamment du fait qu'une exception se soit produite.
python:échantillon:
def lambda_handler(event, context):
print('Checking {} at {}...'.format(SITE, event['time']))
try:
if not validate(urlopen(SITE).read()):
raise Exception('Validation failed')
except:
print('Check failed!')
raise
else:
print('Check passed!')
return event['time']
finally:
print('Check complete at {}'.format(str(datetime.now())))
(Voir classe d'exception et instruction de montée ci-dessous)
python:code(Exemple):
else:
print('Check passed!')
return event['time']
Si validate () n'est pas False, exécutez l'instruction d'impression et renvoyez la valeur de clé de temps des données d'événement.
python:code(Exemple):
finally:
print('Check complete at {}'.format(str(datetime.now())))
«Vérification terminée à l'heure actuelle» est émis sur la sortie standard.
python:résultat(Exemple):
Check complete at 2016-05-29 18:00:15.508132
L'une des classes d'exception incluses dans le module d'exception. Le module d'exception n'a pas besoin d'être importé.
Exceptions intégrées: http://docs.python.jp/2/library/exceptions.html
code
raise Exception('Validation failed')
De toutes les exceptions intégrées, celles qui ne sont pas des terminaisons système sont dérivées de cette classe. Toutes les exceptions définies par l'utilisateur doivent être des classes dérivées de cette classe.
Il est utilisé lorsque vous souhaitez déclencher intentionnellement une exception.
Lorsqu'il est utilisé seul, il lève immédiatement une exception.
Lorsqu'il est utilisé dans une instruction d'exception try .., définissez l'exception que vous voulez envoyer avec rise dans l'instruction try et décrivez "rehaise" dans la clause except pour renvoyer réellement l'exception.
python:code(Exemple):
try:
if not validate(urlopen(SITE).read()):
raise Exception('Validation failed')
Si validate () n'est pas vrai, définissez une exception (lancez une classe d'exception «La validation a échoué»).
python:code(Exemple):
except:
print('Check failed!')
raise
Lorsqu'une exception se produit, exécutez l'instruction d'impression et déclenchez l'exception définie dans l'instruction try.
Offre la possibilité d'effectuer des substitutions de variables complexes et un formatage de valeur pour les objets chaîne.
python:code(Exemple):
print('Checking {} at {}...'.format(SITE, event['time']))
python:résultat(Exemple):
'Vérification de l'URL du site au moment...'
La méthode contenue dans l'objet fichier. Fournit une fonction pour lire le contenu du fichier.
python:code(Exemple):
if not validate(urlopen(SITE).read()):
Recommended Posts