Erklärt, wie die for-Anweisung, die häufig in Python verwendet wird, für jedes Muster verwendet wird.
Es wird oft in komplizierten Kombinationen verwendet und scheint schwierig zu sein, aber die grundlegende Syntax ist sehr einfach, wenn nur zwei Elemente angegeben werden.
▼ Ergänzende Informationen zu Daten („A“ oben)
Nehmen Sie ein Element von A und speichern Sie es in einer Variablen ("a" oben). Wiederholen Sie dies ** für die Anzahl der Elemente **.
Jedes Mal, wenn ein Element herausgenommen wird, ** wird die in der zweiten und den folgenden Zeilen beschriebene Verarbeitung ausgeführt **.
Beispiele für Zahlen und Zeichenfolgen, Variablenspezifikationen und direkte Beschreibung.
Extrahieren der numerischen Elemente einer Variablen
list = [1,2,3]
for a in list:
print(a)
#Ausgabe
1
2
3
Extrahieren des Zeichenfolgenelements einer Variablen
list = ["AAA","BBB","CCC"]
for a in list:
print(a)
#Ausgabe
AAA
BBB
CCC
Geben Sie den numerischen Wert direkt an
for a in [1,2,3]:
print(a)
#Ausgabe
1
2
3
Geben Sie die Zeichenfolge direkt an
for a in ["AAA","BBB","CCC"]:
print(a)
#Ausgabe
AAA
BBB
CCC
Tupeltyp
tuple = "AAA","BBB", "CCC"
tuple #Ausgabe:('AAA', 'BBB', 'CCC')
type(tuple) #Ausgabe: Tupel
for a in tuple:
print(a)
#Ausgabe
AAA
BBB
CCC
Typ einstellen
set = {1,1,2,2,3,3,3,4}
set #Ausgabe:{1, 2, 3, 4}
type(set) #Ausgabe: setzen
for a in set:
print(a)
#Ausgabe
1
2
3
4
Ergänzung: Klicken Sie hier, um eine Beschreibung des Tupels zu erhalten (https://qiita.com/yuta-38/items/e2306af6a378430ec873).
python
for a in range(5):
print(a)
#Ausgabe
0
1
2
3
4
python
for a in list(range(0,8,2)):
print(a)
#Ausgabe
0
2
4
6
** ▼ Ergänzung: Über die Bereichsfunktion ** Eine Funktion, die den "Anfangswert", den "Endwert des Bereichs" und den "Änderungsbetrag" angibt und den entsprechenden numerischen Wert im Bereichstyp speichert.
Klicken Sie hier, um Details zur Bereichsfunktion anzuzeigen (https://qiita.com/yuta-38/items/408dba0df6264878a83b).
Es ist möglich, den Zielbereich mithilfe von Slices anzugeben.
** ▼ Was ist eine Scheibe? ** ** ** Eine Art von Bereichsspezifikationsmethode, z. B. Liste. Notation zur Angabe des Bereichs mit [] und :.
** ▼ Grundlegende Syntax in Scheiben schneiden **
[a:b:c]
└ "a": Startsequenznummer
└ "b": Endsequenznummer (kleiner als)
└ "c": Betragssyntax ändern
b und c können weggelassen werden
Klicken Sie hier, um eine detaillierte Erklärung der Slices zu erhalten (# https://qiita.com/yuta-38/items/0d5c55b748d10f83af53).
** Beispiel beim Extrahieren des dritten und nachfolgender Elemente **
[2:]
└ Element zählt ab 0
Geben Sie die zu startende Nummer an
list = [1,2,3,4,5,6,7,8,9]
for a in list[2:]:
print(a)
#Ausgabe
3
4
5
6
7
8
9
** Beispiel Extrahieren Sie das 5. bis 8. Element **
[4:8]
└ Element zählt ab 0
└ SEQ ID NO: 4 ist das 5. Element
└ SEQ ID NO: 8 ist das 9. Element
└ Sequenznummer 8 ist nicht enthalten (Ende der Verarbeitung)
Geben Sie die zu startende Nummer an
list = [1,2,3,4,5,6,7,8,9]
for a in list[4:8]:
print(a)
#Ausgabe
5
6
7
8
** Beispiel Extrahieren Sie den erhaltenen Wert, indem Sie jeweils 3 von 50 bis 70 addieren. **
[50:71:3]
└ 50. Sequenznummer
└ Endet bei der 71. Sequenznummer (enthält nicht den 71. Wert)
└ Betrag ändern: Um 3 erhöhen
Verwenden Sie range (1.100)
└ Ganzzahl von 1 bis 99
Geben Sie den zu extrahierenden Bereich und den Änderungsbetrag an
for a in range(1,100)[50:71:3]:
print(a)
#Ausgabe
51
54
57
60
63
66
69
Für die if-Anweisung klicken Sie hier (https://qiita.com/yuta-38/items/f974272a676d8171f4b3).
** ▼ Beispiel für die Kombination von for-Anweisung und if-Anweisung ① **
Extrahieren Sie nur gerade Zahlen aus den Zahlen 1-9. (10 nicht enthalten)
Nur gerade herausnehmen
for a in range(1,10):
if a%2 == 0:
print(a)
#Ausgabe
2
4
6
8
└ "%" Rest └ "a% 2 == 0" Der Rest der Division von a durch 2 ist 0 (= gerade)
** ▼ Beispiel für die Kombination von for-Anweisung und if-Anweisung ② ** Aus den numerischen Werten von 1 bis 100 werden die numerischen Werte, die gerade sind, 90 oder mehr und nicht 100 enthalten, nach Listentyp extrahiert. (101 nicht enthalten)
Kombination von Vergleichsoperatoren
list = []
for a in range(1,101):
if a%2 == 0 and a >= 90 and not a == 100:
list.append(a)
list
#Ausgabe
# [90, 92, 94, 96, 98]
Grundlegende Syntax der break-Anweisung (in if-Anweisung)
if A:
break
Bei Bedingung A wird die Verarbeitung unterbrochen.
Praktisches Beispiel für eine break-Anweisung
for a in range(1,20):
if a%2 == 0:
if a > 10:
break
print(a)
#Ausgabe
2
4
6
8
10
Grundlegende Syntax der continue-Anweisung (in if-Anweisung)
if A:
continue
Bedingung A überspringt die Verarbeitung. Andere werden ausgeführt.
Praktisches Beispiel für eine Fortsetzung der Anweisung
for a in range(0,5):
if a == 3:
continue
print(a)
#Ausgabe
0
1
2
4
** ▼ Praktisches Beispiel für eine Fortsetzung der Anweisung ② ** Überspringen Sie gerade Zahlen von 0 bis 10 und extrahieren Sie. (Nur ungerade Zahlen extrahieren)
Praktisches Beispiel für die Anweisung continue ②
for a in range(0,11):
if a%2 ==0 :
continue
print(a)
#Ausgabe
1
3
5
7
9
Der Prozess ändert sich nicht, ob er beschrieben wird oder nicht. ** Beschrieben, um deutlich anzuzeigen, dass es nicht verarbeitet wird.
Grundlegende Syntax von pass
if A:
AAA
else:
pass
Wenn die Bedingung "A" ist, wird der Prozess "AAA" ausgeführt. Ansonsten nichts tun.
▼ Der Vorgang ist der gleiche wie unten.
python
if A:
AAA
** ▼ (Originalverarbeitung) Verarbeitung zum Extrahieren von geraden Zahlen von 1 bis 10 **
Originalverarbeitung
list = []
for a in range(1,11):
if a%2 == 0:
list.append(a)
list
#Ausgabe
[2, 4, 6, 8, 10]
Es gibt einen Pass ①
list = []
for a in range(1,11):
if a%2 == 0:
pass
list.append(a)
list
#Ausgabe
[2, 4, 6, 8, 10]
Es gibt einen Pass ②
list = []
for a in range(1,11):
if a%2 == 0:
list.append(a)
pass
list
#Ausgabe
[2, 4, 6, 8, 10]
Es gibt einen Pass ③
list = []
for a in range(1,11):
pass
pass
if a%2 == 0:
pass
pass
pass
list.append(a)
pass
list
#Ausgabe
[2, 4, 6, 8, 10]
Passfehler ①
list = []
for a in range(1,11):
if a%2 == 0: pass
list.append(a)
list
#Ausgabe
# IndentationError: unexpected indent
Passfehler ②
list = []
for a in range(1,11):
if a%2 == 0:
pass pass
list.append(a)
list
#Ausgabe
# SyntaxError: invalid syntax
Recommended Posts