[Einführung in Data Scientists] Grundlagen von Python ♬ Funktionen und anonyme Funktionen usw.

Fortsetzung von letzter Nacht. 【Hinweis】 ["Data Scientist Training Course an der Universität von Tokio"](https://www.amazon.co.jp/%E6%9D%B1%E4%BA%AC%E5%A4%A7%E5%AD%A6%E3 % 81% AE% E3% 83% 87% E3% 83% BC% E3% 82% BF% E3% 82% B5% E3% 82% A4% E3% 82% A8% E3% 83% B3% E3% 83 % 86% E3% 82% A3% E3% 82% B9% E3% 83% 88% E8% 82% B2% E6% 88% 90% E8% AC% 9B% E5% BA% A7-Python% E3% 81 % A7% E6% 89% 8B% E3% 82% 92% E5% 8B% 95% E3% 81% 8B% E3% 81% 97% E3% 81% A6% E5% AD% A6% E3% 81% B6 % E3% 83% 87% E2% 80% 95% E3% 82% BF% E5% 88% 86% E6% 9E% 90-% E5% A1% 9A% E6% 9C% AC% E9% 82% A6% Ich werde E5% B0% 8A / dp / 4839965250 / ref = tmm_pap_swatch_0? _ Encoding = UTF8 & qid = & sr =) lesen und die Teile zusammenfassen, an denen ich einige Zweifel habe oder die ich nützlich finde. Daher denke ich, dass die Zusammenfassung unkompliziert sein wird, aber bitte lesen Sie sie und denken Sie, dass der Inhalt nichts mit diesem Buch zu tun hat.

Kapitel 1-2 Python-Grundlagen

1-2-5 Funktion

1-2-5-1 Funktionsgrundlagen

Eine Funktion hat mindestens eine der folgenden Eigenschaften ⓪ Befolgen Sie die Anweisungen und führen Sie die vorgeschriebene Verarbeitung durch ① Sammeln und standardisieren Sie eine Reihe von Prozessen ② Übergeben Sie das Argument und erhalten Sie den Rückgabewert

Einfache Funktion

③ Das Grundformat ist wie folgt

Funktion, die nichts tut
def do_nothing():
    pass
do_nothing()

Ergebnis nichts tun

Hallo Welt ausgeben
def hello_world():
    print('hello world')
hello_world()

Ergebnis

hello world
Die Ausgabe ändert sich je nach Argument
def hello_world(arg='hello_world'):
    print(arg)
    
hello_world('hello_world')
hello_world('good morning')

Ergebnis

hello_world
good morning
* args Ausgabeargument als Tupel
def hello_world(*args):
    print(args)
    
hello_world('hello_world','good morning')

Ergebnis In-Funktion und Ausgabe sind Tupel

('hello_world', 'good morning')
** kwargs-Argument im Wörterbuch ausgeben
def hello_world(**kwargs):
    print(kwargs)
    
hello_world(day='hello_world',morning='good morning', evening='good evening')

Ergebnis Das Innere und die Ausgabe der Funktion sind Wörterbücher, der Argumentname ist der Schlüssel des Wörterbuchs und der Wert des Arguments ist der Wert des Wörterbuchs.

{'day': 'hello_world', 'morning': 'good morning', 'evening': 'good evening'}
Funktion mit einem Rückgabewert
def calc_multi(a, b):
    return a * b

print(calc_multi(3,5))

Ergebnis

15

fibonacci

def calc_fib(n):
    if n ==1 or n== 2:
        return 1
    else:
        return calc_fib(n-1) + calc_fib(n-2)
    
for n in range(1,21):
    print(calc_fib(n),end=' ')

Ergebnis

1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
1-2-5-2 Anonyme Funktionen Lambda und Kartenfunktionen

Wie unten gezeigt, wird eine Funktion ohne Funktionsnamen als anonyme Funktion Lambda bezeichnet.

print((lambda a, b:a*b)(3, 5))

Ergebnis

15
Kartenfunktion
def calc_double(x):
    return x * 2

for num in [1, 2, 3, 4]:
    print(calc_double(num))

Ergebnis

2
4
6
8

Berechnen Sie [1, 2, 3, 4] sofort mit der Kartenfunktion und geben Sie sie mit Liste aus

print(list(map(calc_double, [1, 2, 3, 4])))

Ergebnis

[2, 4, 6, 8]
Kartenfunktion und Lambda

Sie können eine normale Funktion durch Lambda ersetzen und in einer Zeile ausgeben

print(list(map(lambda x : x*2, [1, 2, 3, 4])))

Ergebnis

[2, 4, 6, 8]
Übung 1-2
print((lambda x : sum(x))(i for i in range(1,51)))
print((lambda x : sum(x))(range(1,51)))
print( sum(i for i in range(1,51)))
print( sum(range(1,51)))
print(reduce(lambda x, y: x + y, range(1,51)))

Ergebnis

1275
Filterfunktion und Reduktionsfunktion
a = [-1, 3, -5, 7, -9]
print(list(filter(lambda x: abs(x) > 5, a)))

Ergebnis

[7, -9]

Die Reduktionsfunktion ist das Ergebnis der sequentiellen Addition von Elementen

from functools import reduce
print(reduce(lambda x, y: x + y, a))

Ergebnis

-5

【Referenz】 Grundlegende Python-Funktionen (map () filter () redu ())

Zusammenfassung

・ Funktionsgrundlagen ・ Verwendung von * args und ** kwargs ・ Ich habe versucht, die Verwendung der anonymen Funktion Lambda, Map-Funktion, Filterfunktion und Reduktionsfunktion zu arrangieren.

Es ist leicht zu verstehen, wenn Sie zu den Grundlagen zurückkehren und sie nebeneinander anordnen.

Recommended Posts

[Einführung in Data Scientists] Grundlagen von Python ♬ Funktionen und anonyme Funktionen usw.
[Einführung in Data Scientists] Grundlagen von Python ♬ Funktionen und Klassen
[Einführung in Data Scientist] Grundlagen von Python ♬
[Einführung in Data Scientists] Grundlagen von Python ♬ Bedingte Verzweigung und Schleifen
[Einführung in Datenwissenschaftler] Grundlagen der Wahrscheinlichkeit und Statistik ♬ Wahrscheinlichkeits- / Wahrscheinlichkeitsvariable und Wahrscheinlichkeitsverteilung
# 4 [Python] Grundlagen der Funktionen
[Einführung in Data Scientist] Grundlagen der wissenschaftlichen Berechnung, Datenverarbeitung und Verwendung der Grafikzeichnungsbibliothek ♬ Grundlagen von Scipy
[Einführung in Data Scientist] Grundlagen der wissenschaftlichen Berechnung, Datenverarbeitung und Verwendung der Grafikzeichnungsbibliothek ♬ Grundlagen von Pandas
[Einführung in Data Scientist] Grundlagen der wissenschaftlichen Berechnung, Datenverarbeitung und Verwendung der Grafikzeichnungsbibliothek ♬ Grundlagen von Matplotlib
Liste der Python-Bibliotheken für Datenwissenschaftler und Dateningenieure
[Einführung in Data Scientist] Grundlagen der wissenschaftlichen Berechnung, Datenverarbeitung und Verwendung der Grafikzeichnungsbibliothek ♬ Umgebungskonstruktion
[Einführung in cx_Oracle] (Teil 6) Zuordnung von DB- und Python-Datentypen
[Einführung in Data Scientists] Deskriptive Statistik und einfache Regressionsanalyse ♬
[Python] Zusammenfassung der Verwendung von Split- und Join-Funktionen
[Einführung in Python] Kombinieren Sie Nikkei-Durchschnitts- und NY Dow-CSV-Daten
[Einführung in Python3 Tag 1] Programmierung und Python
Lösen der Einführung von AOJ in Algorithmen und Datenstrukturen in Python -Part1-
Einführung in die Python-Grundlagen des maschinellen Lernens (unbeaufsichtigtes Lernen / Hauptanalyse)
[Einführung in Python] Ich habe die Namenskonventionen von C # und Python verglichen.
Lösen der Einführung von AOJ in Algorithmen und Datenstrukturen in Python -Part2-
Lösen der Einführung von AOJ in Algorithmen und Datenstrukturen in Python -Part4-
Einführung in TensorFlow - Zusammenfassung von vier Regeln und grundlegenden mathematischen Funktionen
[Einführung in cx_Oracle] (Teil 2) Grundlagen zum Verbinden und Trennen mit Oracle Database
Lösen der Einführung von AOJ in Algorithmen und Datenstrukturen in Python -Part3-
Statistische Grundlagen und Python, Grafik usw. (Memo)
[Einführung in Python3, Tag 17] Kapitel 8 Datenziele (8.1-8.2.5)
[Einführung in die Udemy Python3 + -Anwendung] 55. In-Function-Funktionen
[Einführung in Python3, Tag 17] Kapitel 8 Datenziele (8.3-8.3.6.1)
[Einführung in Python3 Tag 18] Kapitel 8 Datenziele (8.3.6.2 bis 8.3.6.3)
Komprimieren Sie Python-Daten und schreiben Sie in SQLite
Python-Grundlagen ①
Grundlagen von Python ①
# Python-Grundlagen (Funktionen)
Python-Grundlagen: Funktionen
Einführung von Python
[Einführung in die Udemy Python3 + -Anwendung] 26. Kopie des Wörterbuchs
[Einführung in Python3 Tag 12] Kapitel 6 Objekte und Klassen (6.3-6.15)
[Einführung in die Udemy Python3 + -Anwendung] 19. Kopie der Liste
[Cx_Oracle Primer] (Teil 3) Grundlagen zum Durchsuchen von Tabellen
[Python] Lesen von Daten aus CIFAR-10 und CIFAR-100
[Einführung in Python] Umgang mit Daten im JSON-Format
[Einführung in die Udemy Python3 + -Anwendung] 64. Namespace und Gültigkeitsbereich
[Einführung in Python3 Tag 11] Kapitel 6 Objekte und Klassen (6.1-6.2)
[Python] Kapitel 02-01 Grundlagen von Python-Programmen (Operationen und Variablen)
[Einführung in cx_Oracle] (5.) Umgang mit japanischen Daten
cv2-Funktionen und Datentypen (OpenCV-Python-Bindung)
[Einführung in Python] Grundlegende Verwendung von Lambda-Ausdrücken
[Python] Von der morphologischen Analyse von CSV-Daten bis zur CSV-Ausgabe und Diagrammanzeige [GiNZA]
[Einführung in cx_Oracle] (Teil 9) Zuordnung von DB- und Python-Datentypen (Version 8 oder höher)
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung
[Einführung in die Udemy Python3 + -Anwendung] 35. Vergleichsoperatoren und logische Operatoren
Verwendung für Python-Stapel und -Warteschlangen (Geschwindigkeitsvergleich jeder Datenstruktur)
Zusammenfassung der Tools, die zum Analysieren von Daten in Python benötigt werden
Verarbeitung von CSV-Daten in voller und halber Breite in Python
Grundlagen der Python-Scraping-Grundlagen
[Kapitel 5] Einführung in Python mit 100 Klopfen Sprachverarbeitung
Lesehinweis: Einführung in die Datenanalyse mit Python
Einführung in die Python-Sprache
Verwendung von Python Kivy ~ ~ Grundlagen der Kv-Sprache ~
[Kapitel 3] Einführung in Python mit 100 Klopfen Sprachverarbeitung