Nicht beschränkt auf Python, wenn es darum geht, mit Programmen zu beginnen, nach der Erstellung der Umgebung, Hello World und vier Betriebsregeln.
Aber ist es persönlich am besten, Anfänger in dieser Reihenfolge zu unterrichten, um "ein veränderungsresistentes Business-Programm zu erstellen"? Ich dachte immer.
Als ich von einem kleinen Team aus die Gelegenheit bekam, mit der Python-Programmierung zu beginnen, brachte ich ihnen "Funktionen" bei, die keine allgemeinen Lehrbuchverfahren sind. Dann habe ich zuerst versucht, die Idee, "else" nicht in der if-Anweisung zu verwenden, einzufügen.
Wir werden auf den Prozess der Antwort zurückblicken und zusammenfassen, was uns aufgefallen ist.
Das Folgende ist nur eine Beschreibung, die für diejenigen, die damit vertraut sind, offensichtlich ist, und es gibt keine neuen Techniken oder Themen. Außerdem werde ich zusammenfassen, was passiert ist, nachdem die Umgebungskonstruktion Hello World und die vier Berechnungsregeln abgeschlossen wurden.
Eines der Mitglieder war ein Anfänger in der Programmierung, aber es gab auch ein Mitglied, das ein Programm für seine eigene Forschung mit "R" usw. schrieb.
Das ultimative Ziel des Teams war "Ich möchte am Ende ein Geschäftssystem schaffen können", daher erklärte ich zunächst, dass die folgenden drei Punkte als Startrichtlinie hervorgehoben werden sollten.
――Um Fehler zu reduzieren, wurde der Lehrplan mit dem Gedanken erstellt, dass die Reduzierung der Anzahl der Zweige oberste Priorität hat. ―― Unter der Annahme, dass Änderungen immer auftreten werden, überlegen Sie gemeinsam, welche Programme gegen Änderungen resistent sind. —— Denken Sie an die „Lesbarkeit“ von Programmen, die von anderen Mitgliedern erstellt wurden, und von Programmen, die Sie vor einigen Monaten erstellt haben.
Das Team wollte ein Programm für eine bestimmte Aufgabe verwenden, daher wurde das Thema für die Einführung entsprechend dem Aufgabenthema erstellt.
Anzahl der Personen | Gebühr |
---|---|
weniger als 10 | 980 |
11~20 | 840 |
21 oder mehr | 720 |
Wir haben sie gebeten, darüber nachzudenken, was sie als Input benötigen, um den gewünschten Preis zu erhalten. Dann lehrte er, wie man eine "Funktion" mit dem Zielwert als "Rückgabewert" und der Eingabe als "Argument" schreibt.
fee_calculate.py
#Skelett
def fee_calculate(num): #Funktion zur Berechnung der Gebühr aus der Anzahl der Personen
#do_something
fee = 980 #Vorerst umziehen
return(fee)
num = 5 #Stellen Sie die Anzahl der Personen ein
fee = fee_calculate(num) #Verwenden Sie eine Funktion, um den Preis zu ermitteln
print(fee) #"980", um das Ergebnis anzuzeigen
Es gibt nichts in der Funktion, aber ich habe eingeprägt, dass "ich mit der Funktion den gewünschten Wert erhalte".
Als nächstes habe ich gelernt, wie man den Preis anhand der Anzahl der Personen ermittelt. Darüber hinaus führte er die Idee ein, dass "Sie in der Lage sein sollten, verschiedene Schreibweisen von if-Aussagen zu lesen, diese aber nicht selbst aktiv verwenden müssen".
fee_calculate.py
#Gebührenberechnung
def fee_calculate(num): #Funktion zur Berechnung der Gebühr aus der Anzahl der Personen
if 1 <= num <= 10:
fee = 980
return(fee) #Kehre zurück, sobald das Ergebnis herauskommt
if 11 <= num <= 19:
fee = 840
return(fee) #Kehre zurück, sobald das Ergebnis herauskommt
if 20 <= num:
fee = 720
return(fee)
num = 5 #Stellen Sie die Anzahl der Personen ein
fee = fee_calculate(num) #Verwenden Sie eine Funktion, um den Preis zu ermitteln
print(fee) #"980", um das Ergebnis anzuzeigen
Wenn Sie eine Gebühr verlangen, kehren Sie einfach zurück. Wir haben mit den Mitgliedern über die Leichtigkeit des Schreibens, Lesens und Änderns im Vergleich zu Anti-Mustern gesprochen, die "else" und "elif" verwenden.
#Anti-Muster
def fee_calculate_a(num):
if 1 <= num <= 10:
fee = 980
elif 11 <= num <= 19: #Versuchen Sie es mit elif
fee = 840
else: #Versuchen Sie es mit else
fee = 720
return(fee) #Ergebnis zurückgeben
num = 21 #Stellen Sie die Anzahl der Personen ein
fee = fee_calculate_a(num) #Verwenden Sie eine Funktion, um den Preis zu ermitteln
print(fee) #"720", um das Ergebnis anzuzeigen
Ich dachte, dass ich mit einem so kleinen Programm den Unterschied in der Leichtigkeit des Schreibens, Lesens und Änderns vielleicht nicht erkennen würde, aber Mitglieder mit Programmiererfahrung stimmten dieser Idee auf gute Weise zu. gab. Infolgedessen war es hilfreich, weil es ein Ort für die Teilnehmer wurde, um Meinungen auszutauschen und nachzudenken. Die Meinungen des Teams werden demokratisch entschieden, so dass die Anfänger anscheinend dachten: "Das ist es."
Als ich die Idee lernte, "mithilfe einer Funktion den gewünschten Wert zu erzielen" und mich daran erinnerte, wie man eine Funktion aufruft, hatte ich das Gefühl, dass ich schon früh hätte beginnen können, die Bibliothek zu verwenden. Es gibt. (Verwenden Sie beispielsweise "Kalender", um die Anzahl der Tage in einem Monat zu ermitteln.)
Es ist wichtig, über den Algorithmus selbst nachzudenken und ihn zu erstellen, aber wie finden und verwenden Sie viele "praktische Bibliotheken" auf der Welt und wie kombinieren Sie sie? Ich denke, es ist wichtig, solche Dinge zu lernen, wenn Sie jetzt eine Programmiersprache lernen.
Ich habe Python in Form von Lernsitzungen kennengelernt, die in mehrere Abschnitte unterteilt sind, aber ich denke, dass die Anfänger stetig wachsen. Mit anderen Worten, das Verhalten "Nachdenken über das, was Sie tun möchten und zuerst googeln, um die Bibliothek zu finden" ist geboren. Wenn Sie verstehen, wie man Funktionen verwendet, gibt es viele Bibliotheken, die Sie verwenden können, indem Sie "Import" lernen.
Denken Sie in der Lernsitzung beim Üben, ein Thema zu geben, darüber nach, wie es gelöst werden kann, und erstellen Sie ein Programm, "Test", "Fehlerbehandlung" und "Protokollausgabe", die für die Erstellung eines Geschäftssystems unverzichtbar sind Wir lernen gemeinsam, wie man denkt und wie man damit umgeht.
Python3 verfügt über eine umfangreiche Bibliothek mit "Test" -Tools, "Fehlerbehandlung" und "Protokollausgabe". Es ist jedoch wichtig, frühzeitig zu lernen und zu überlegen, wie es erstellt wird und wie es besser zu verwenden ist. Weil es wird.
Zusammenfassend war jeder in der Lage, dies zu tun, ohne es ihnen klar zu sagen. Sobald Sie gelernt haben, wie man lernt, ist es schneller, selbst zu lernen als zu lehren.
Übrigens wird in dem zuvor erwähnten Gebührenberechnungsprogramm die Wiederholung verwendet, wenn Sie mehrere Bewerber gleichzeitig bearbeiten möchten.
Das Beispiel für die wiederholte Berechnung der Gebühr für die Liste der Anzahl der Antragsteller lautet wie folgt.
#Wiederholung
list = [5, 11, 21, 7, 15, 30] #Liste der Anzahl der Bewerber
def fee_calculate(num): #Funktion zur Berechnung der Gebühr aus der Anzahl der Personen
if 1 <= num <= 10:
fee = 980
return(fee)
if 11 <= num <= 19:
fee = 840
return(fee)
if 20 <= num:
fee = 720
return(fee)
for num in list: #Extrahieren Sie den Inhalt der Liste nacheinander
fee = fee_calculate(num) #Verwenden Sie eine Funktion, um den Preis zu ermitteln
print(fee) #Ergebnisse anzeigen
Die Idee ist, zuerst die Schleife zu drehen, und später kann die Funktion nicht mehr ausgeschnitten werden. (Weil es nichts weiter als ein Aufwand ist, später in diesem Verfahren eine Funktion zu erstellen.) Ich persönlich denke, dass es für mich schwierig sein wird, meine Programmierkenntnisse zu verbessern, wenn ich nur diese Art von Methode mache, außer wenn ich ein Einwegprogramm mache.
#Anti-Muster
list = [5, 11, 21, 7, 15, 30] #Liste der Anzahl der Bewerber
for num in list: #Extrahieren Sie den Inhalt der Liste nacheinander
if 0 <= num <= 10: #Beurteilen Sie die Anzahl der herausgenommenen Personen ...
fee = 980
elif 11 <= num <= 19:
fee = 840
else:
fee = 720
print(fee)
Wenn man die beiden Programme vergleicht, ist das kürzere das Anti-Pattern, aber das, das leichter zu lesen ist, ich hoffe, es gibt Ihnen die Möglichkeit, darüber nachzudenken.
Persönlich ist es einfach, "else" und "elif" zu schreiben, aber beim Lesen finde ich es unangenehm, die vorherige Bedingung
Recommended Posts