~~ Qiita Einmal in der Woche sind mir die Beiträge ausgegangen. Jede unerfahrene Programmiersprache war in Ordnung. ~~ Ungefähr letzte Woche wurde die Nachricht, dass "Python Java im Programmiersprachen-Ranking endlich überholt", zu einem heißen Thema. Zu dieser Zeit schaute ich beiläufig auf den Python-Quellcode, "Das Format unterscheidet sich grundlegend von Java, PHP und C #, die ich bisher erlebt habe ... ich kann nicht lesen ..." "Aber wenn es um künstliche Intelligenz geht, die jetzt populär ist, Python ... bin ich interessiert und möchten Sie die grundlegende Syntax studieren ..." Es wurde. Selbst in Qiitas Tag-Ranking bin ich wöchentlich / monatlich immer die Nummer eins, und ich dachte, es würde nicht schaden, zu studieren.
Ich denke, es ist das n-te Gebräu, aber ~~ Qiita Wegen des Ziels, einmal pro Woche zu posten ~~ habe ich im Vergleich mit Java studiert.
Hello World! Zuerst "Hallo Welt!" Das Ausgabebild ist
Hello World!
Mit Java
HelloWorld.java
System.out.println("Hello World!");
Mit Python
HelloWorld.py
print("Hello world!")
~~ Ich verstehe, dass das Trennzeichen Semikolon (;) hier nicht erforderlich ist. ~~ Ich habe es dir in den Kommentaren gesagt.
Python hat auch ein Semikolon (;), das beim Schreiben mehrerer Anweisungen in einer Zeile verwendet wird.
x = 10; y = 20; z = 30;
#Aktion oben zusammen
x, y, z = 10, 20, 30
Deshalb habe ich es versucht.
HelloWorld.py
print("Hello world!");print("Hello world!!")
Ausführungsergebnis
Hello world!
Hello world!!
Ich konnte ein Semikolon schreiben! Da Sie mir so viel beigebracht haben, habe ich Semikolon in Python untersucht.
Wenn man sich den Google Python Style Guide ansieht, scheint er wie folgt geschrieben zu sein.
Beenden Sie eine Zeile mit einem Semikolon und verwenden Sie kein Semikolon, um zwei Anweisungen in dieselbe Zeile zu schreiben.
Wie bei Java ist es nicht zulässig, zwei Anweisungen in dieselbe Zeile zu schreiben. Es scheint auch nicht gut zu sein, die Zeile mit einem Semikolon zu beenden.
In Python habe ich es als ** "Lass uns ohne Semikolon codieren" ** interpretiert.
Davon abgesehen sind die Stilregeln dieselben wie bei Java, das ich bisher gemacht habe.
Als nächstes schrieb ich eine for-Erklärung. Das Ausgabebild ist
0
1
2
3
4
In Java der folgende Code
ForDemo.java
for (int i = 0; i < 5; i++) {
System.out.println(i);
}
Versuchen Sie, in Python zu schreiben, indem Sie es imitieren
ForDemo1.py
for i in range(0, 5):
print(i)
Lauf!
IndentationError: expected an indented block
\(^o^)/ Suchen Sie hier bei Google nach "Python-Syntax"! (langsam Schauen Sie sich [Suchergebnisse oben] an (http://www.tohoho-web.com/python/syntax.html). Auszug aus dem verknüpften Einzugselement
In Perl und PHP werden Blöcke durch Einschließen von Anweisungen in {...} erstellt. In Python ist jedoch der Einzug (die Anzahl der Leerzeichen am Zeilenanfang) wichtig und der Einzug mit der gleichen Anzahl von Leerzeichen. Der Satz wird als Block betrachtet. {Ausgelassen} Einrückungen verwenden normalerweise 4 Leerzeichen. Tabulatorzeichen werden als 1 bis 8 Leerzeichen betrachtet, sodass der Einzug ein Vielfaches von 8 ist.
Da der Einzug als Block fungiert, muss er nicht in {} eingeschlossen werden. Selbst wenn ein Anfänger wie ich Python geschrieben hat, kann es gut sein, dass die Einrückungen ausgerichtet sind.
Setzen Sie also vor print (i) einen Einzug in die Syntax, die den Fehler früher verursacht hat.
ForDemo2.py
for i in range(0, 5):
print(i)
Wenn du rennst
0
1
2
3
4
Es kam richtig heraus. Sie können auch eine Zeichenfolge nach in angeben.
ForDemo3.py
for c in 'Hello':
print(c)
Das Ausführungsergebnis wird mit einem Zeichen pro Zeile ausgegeben.
H
e
l
l
o
Hier stellte sich die Frage.
Lassen Sie uns überprüfen, ob ein Zeichen pro Zeile oder ein Wort pro Zeile ausgegeben werden soll.
ForDemo4.py
list = ['Hello', 'World']
for c in list:
print(c)
Das Ausführungsergebnis ist
Hello
World
Es erschien ein Wort pro Zeile. Wenn Sie dann eine double for-Anweisung schreiben, wird dann ein Zeichen pro Zeile ausgegeben?
ForDemo5.py
list = ['Hello', 'World']
for c1 in list:
for c2 in c1:
print(c2)
Das Ausführungsergebnis ist
H
e
l
l
o
W
o
r
l
d
Als nächstes über die if-Anweisung, die für die bedingte Verzweigung unverzichtbar ist. Schreiben wir den in Java geschriebenen Code in Python.
IfDemo1.java
String str = "blue";
if ("blue".equals(str)) {
System.out.println("Es ist grünes Licht.");
} else if ("yellow".equals(str)) {
System.out.println("Es ist ein gelbes Licht.");
} else {
System.out.println("Es ist ein rotes Licht.");
}
Ich werde die if-Anweisung schreiben, nachdem ich verschiedene Beispielcodes gesehen habe.
ifDemo1.py
str = "blue"
if str == "blue":
print("Es ist grünes Licht.")
elif str == "yellow":
print("Es ist ein gelbes Licht.")
else:
print("Es ist ein rotes Licht.")
Wenn ich es laufen lasse,
Es ist grünes Licht.
Es hat normal funktioniert. ~~ Zuerst habe ich sonst if geschrieben und einen Fehler bekommen. ~~ Was lesen Python-Programmierer elif? Als ich schrieb, schrieb ich Elihu, während ich es in meinem Herzen las. Ich finde es cool wie ein Elfenschwertkämpfer. (Laut
Die Existenz von OR, AND und NOT ist für das Schreiben komplizierter bedingter Zweige unabdingbar.
IfDemo2.java
int i = 0;
if (i == 0 || i < 0) {
System.put.println("0 oder weniger");
} else if (50 <= i && i <= 100) {
System.out.println("50 oder mehr und 100 oder weniger");
} else if (!i == 0) {
System.out.println("Nicht 0");
}
Wieder werde ich schreiben, nachdem ich verschiedene Beispielcodes gesehen habe.
IfDemo2.py
i = 0
if i == 0 or i < 0:
print("0 oder weniger")
elif 50 <= i and i <= 100:
print("50 oder mehr und 100 oder weniger")
elif not i == 0:
print("Es ist nicht 0.")
Das Ausführungsergebnis ist
0 oder weniger
Wie ich Ihnen in den Kommentaren gesagt habe, ist es auch möglich, den elif-Teil wie folgt zu beschreiben. Die Anzahl der eingegebenen Zeichen ist gering und recht gut, da Sie die Bedingungen für welche Art von Inhalten auf einen Blick erfassen können.
IfDemo3.py
i = 50
if i == 0 or i < 0:
print("0 oder weniger")
elif 50 <= i <= 100::
print("50 oder mehr und 100 oder weniger")
elif not i == 0:
print("Es ist nicht 0.")
Ausführungsergebnis
50 oder mehr und 100 oder weniger
Zweitens benötigt Python keine Blockdefinition mit {}, Ich wusste nicht, ob ich den bedingten Ausdruck in () einschließen kann, also habe ich es versucht.
IfDemo4.py
i = 1
if (i == 1) or (i >= 2 and i < 3):
print("OK!")
Das Ausführungsergebnis ist
OK!
Ich konnte hinzufügen (). In Bezug auf die bedingte Verzweigung scheint die gleiche Idee wie bei Java, wie beispielsweise die Priorisierung, angewendet werden zu können.
Ich denke, dass die Grundlagen der Schleifenverarbeitung für Anweisung und while-Anweisung sind, also habe ich auch eine while-Anweisung geschrieben. Das Ausgabebild ist dasselbe wie die for-Anweisung.
0
1
2
3
4
Wenn ich es in Java schreibe,
WhileDemo.java
int i = 0;
while(i < 5) {
System.out.println(i);
i++;
}
Schreiben wir es in Python, indem wir den Beispielcode imitieren.
WhileDemo1.py
i = 0
while i < 5:
print(i)
i++
Ich habe einen Fehler in i ++. Bei der Prüfung scheint es, dass Python keinen Inkrement-Operator wie i ++ (https://www.python-izm.com/tips/increment/) hat. Stattdessen wird eine Methode namens ** kumulative Substitution ** verwendet, wie unten gezeigt.
WhileDemo2.py
i = 0
while i < 5:
print(i)
i += 1
Das Ausführungsergebnis ist wie erwartet
0
1
2
3
4
Da es kein Inkrement gibt, scheint es kein Dekrement zu geben. Das Dekrement hat das gleiche Format wie das Inkrement.
WhileDemo3.py
i = 4
while 0 <= i:
print(i)
i -= 1
Ausführungsergebnis
4
3
2
1
0
Da es nicht in {} eingeschlossen ist, gibt es keine Zeile mit nur}. Die Anzahl der Quellcodezeilen ist also recht gering. Aus dem Eindruck, dass sonst, wenn als elif geschrieben, ich denke, dass die Anzahl der eingegebenen Zeichen auch gering ist. Damit können nicht nur maschinelles Lernen, sondern auch Webanwendungen und Spiele erstellt werden.
Ich bin jedoch nicht daran gewöhnt, dass das Trennzeichen Semikolon (;) nicht erforderlich ist. Ich werde ein Semikolon mit Schwung hinzufügen.
「PYPL PopularitY of Programming Language」, Wenn Sie das Ergebnis richtig betrachten, Der Rückgang von PHP ist so groß, dass ich denke, es ist besser, PHP wegzuwerfen und zu Python zu wechseln. Ich bin sehr besorgt, weil ich keine Ahnung habe, wie die Zukunft von Java aussehen wird.
Ich habe nichts, was ich speziell mit Python machen möchte, also frage ich mich, ob ich weiterhin Python studieren werde ...
Recommended Posts