Lambdas Erklärung für Python-Anfänger.
--Lambda Blueprint Erläuterung: Lambda Common Edition (Python): http://qiita.com/tcsh/items/e119d7fd8257e15e599b
Das Zeilenende wird als Kommentar von \ # ignoriert.
python:Code(Zeilenkommentar):
word = 'hello' #Zielwort
Fügen Sie beim Auskommentieren mehrerer Zeilen den Kommentarteil mit drei einfachen oder doppelten Anführungszeichen an derselben Position wie der Einzug der vorherigen Zeile ein. (Da es als Zeichenfolge behandelt wird, wird es nicht ausgeführt.)
python:Code(De facto mehrzeiliger Kommentar):
def validate(res):
'''[von hier] 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.
[Bisher]'''
return EXPECTED in res
Python unterstützt keine Konstanten.
Es ist üblich, Konstanten (anscheinend) in Großbuchstaben zu schreiben.
python:Code(Beispiel):
SITE = 'https://www.amazon.com/' # URL of the site to check
EXPECTED = 'Online Shopping' # String expected to be on the page
Wenn außerhalb der Funktion deklariert, ist der Bereich das gesamte Modul (Datei).
Überprüfen Sie, ob ein Wert vorhanden ist.
python:Code(Anwendungsbeispiel im Rückgabewert einer Funktion):
return EXPECTED in res
Überprüft, ob die durch die Konstante EXPECTED definierte Zeichenfolge im res-Objekt vorhanden ist.
from: Geben Sie den Paket- oder Modulnamen an.
Import: Geben Sie den Paket- oder Modulnamen, den Klassen- oder Funktionsnamen, den Variablennamen usw. an.
python:Importieren Sie das Datetime-Funktionsobjekt aus dem Datetime-Modul:
from datetime import datetime
python:urllib2 Modul(Für Python 2)Importieren Sie das URLopen-Funktionsobjekt aus:
from urllib2 import urlopen
Hinweis: Das urllib-Modul wurde in Python3 in urllib.request, urllib.parse, urllib.parse aufgeteilt.
Ermöglicht Python2 die Verwendung von Funktionen, die in Python3 implementiert und mit Python2 nicht kompatibel sind.
python:Code(Beispiel):
from __future__ import division
from __future__ import absolute_import
from __future__ import print_function
from __future__ import unicode_literals
from future_builtins import *
Hinweis: Von future import * kann nicht definiert werden.
In Python2 war es eine print-Anweisung, in Python3 wurde es zu einer Funktion print ().
Wenn Sie Folgendes schreiben, können Sie print () verwenden, das mit Python3 kompatibel ist.
python:Code(Beispiel):
from __future__ import print_function
In Python3 druckt print () den Inhalt des Zeichenfolgenobjekts.
python:Code(Beispiel):
print('hoge')
print('hoge' + variable_a)
print('a: [', variable_a, ']')
python:Code(Beispiel für die Endspezifikation des Drucks):
print('hoge', end='')
python:Code(Beispiel für die Dateiausgabe):
f = open('test.txt', 'w')
print('hoge', file=f)
Die im datetime-Objekt enthaltene Methode. Bietet die Möglichkeit, das aktuelle lokale Datum und die aktuelle Uhrzeit zurückzugeben.
python:Code(Beispiel):
datetime.now()
python:Ergebnis(Beispiel):
datetime.datetime(2016, 5, 29, 18, 52, 57, 727727)
Hinweis: Jahr, Monat, Tag, Stunde, Minute, Sekunde, Mikrosekunde
Gibt eine Zeichenfolge zurück, die das Objekt in druckbarer Form darstellt.
python:Code(Beispiel):
print(str(datetime.now()))
python:Ergebnis(Beispiel):
2016-05-29 18:52:57.727714
Im urllib2-Modul enthaltene Objekte. Bietet die Möglichkeit, Inhalte im Web abzurufen.
Da die erhaltene Antwort ein dateiähnliches Objekt ist, kann sie von read () gelesen werden.
python:Code(Beispiel):
if not validate(urlopen(SITE).read()):
Benutzer können ihre eigenen Funktionen definieren.
python:Syntax:
def Funktionsname(Streit):
Beschreibung
return Rückgabewert
Wenn keine return-Anweisung vorhanden ist, wird'None 'zurückgegeben.
python:Code(Beispiel):
def validate(res):
# (snip)
return EXPECTED in res
--Argument: res
python:Code(Beispiel):
def lambda_handler(event, context):
# (snip)
--Argumente: Ereignis und Kontext
Es kann abhängig von den Bedingungen verzweigt werden.
python:Syntax:
if (Bedingungen):
Beschreibung
elif (Bedingungen):
Beschreibung
else:
Beschreibung
python:Stichprobe:
if not validate(urlopen(SITE).read()):
raise Exception('Validation failed')
Sie können eine Ausnahme abrufen und sie sofort behandeln.
python:Syntax:
try:
Beschreibung, die eine Ausnahme verursachen kann
except:
Beschreibung, wenn eine Ausnahme auftritt(Für jeden Ausnahmetyp können mehrere Beschreibungen vorgenommen werden)
Eingebaute Ausnahme: http://docs.python.jp/2/library/exceptions.html
else:
Beschreibung, wenn keine Ausnahme auftritt
finally:
Eine Beschreibung des Verhaltens, das immer ausgeführt wird, bevor die try-Anweisung beendet wird, unabhängig davon, ob eine Ausnahme aufgetreten ist.
python:Stichprobe:
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())))
(Siehe Ausnahmeklasse und Raise-Anweisung unten)
python:Code(Beispiel):
else:
print('Check passed!')
return event['time']
Wenn validate () nicht False ist, führen Sie die print-Anweisung aus und geben Sie den Zeitschlüsselwert der Ereignisdaten zurück.
python:Code(Beispiel):
finally:
print('Check complete at {}'.format(str(datetime.now())))
'Zur aktuellen Zeit abgeschlossen prüfen' wird an die Standardausgabe ausgegeben.
python:Ergebnis(Beispiel):
Check complete at 2016-05-29 18:00:15.508132
Eine der im Ausnahmemodul enthaltenen Ausnahmeklassen. Das Ausnahmemodul muss nicht importiert werden.
Integrierte Ausnahmen: http://docs.python.jp/2/library/exceptions.html
Code
raise Exception('Validation failed')
Von allen integrierten Ausnahmen werden diejenigen, die nicht vom System terminiert sind, von dieser Klasse abgeleitet. Alle benutzerdefinierten Ausnahmen sollten abgeleitete Klassen dieser Klasse sein.
Es wird verwendet, wenn Sie absichtlich eine Ausnahme auslösen möchten.
Bei alleiniger Verwendung wird sofort eine Ausnahme ausgelöst.
Wenn Sie es in einer try .. -Ausnahmeanweisung verwenden, definieren Sie die Ausnahme, die Sie mit Raise senden möchten, in der try-Anweisung und beschreiben Sie'raise 'in der Except-Klausel, um die Ausnahme tatsächlich zurückzugeben.
python:Code(Beispiel):
try:
if not validate(urlopen(SITE).read()):
raise Exception('Validation failed')
Wenn validate () nicht True ist, definieren Sie eine Ausnahme (werfen Sie eine Ausnahmeklasse 'Validierung fehlgeschlagen').
python:Code(Beispiel):
except:
print('Check failed!')
raise
Wenn eine Ausnahme auftritt, führen Sie die print-Anweisung aus und lösen Sie die in der try-Anweisung definierte Ausnahme aus.
Bietet die Möglichkeit, komplexe Variablensubstitutionen und Wertformatierungen für Zeichenfolgenobjekte durchzuführen.
python:Code(Beispiel):
print('Checking {} at {}...'.format(SITE, event['time']))
python:Ergebnis(Beispiel):
'Überprüfen der Site-URL zur Zeit...'
Die im Dateiobjekt enthaltene Methode. Bietet eine Funktion zum Lesen des Dateiinhalts.
python:Code(Beispiel):
if not validate(urlopen(SITE).read()):
Recommended Posts