Ein Java-Programmierer studierte Python. (für, if, while-Anweisung)

Warum hast du dich entschieden, Python zu studieren?

~~ 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.

Betriebsüberprüfungsumgebung

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.

zur Aussage

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.

Was ist, wenn ein for hoge in Array?

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

if-Anweisung

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

Was ist mit ODER UND NICHT?

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.

while-Anweisung

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

Eindrücke des Versuchens

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

Ein Java-Programmierer studierte Python. (für, if, while-Anweisung)
Ein Java-Programmierer studierte Python. (Über Typ)
Ein Java-Programmierer studierte Python. (Über Funktionen (Methoden))
Ein Java-Programmierer studierte Python. (Über Dekorateure)
[Super Basic] Vergleichen Sie Python, Java und JavaScript (Variablen, if-Anweisungen, while-Anweisungen, for-Anweisungen)
Python-Übungen für Anfänger # 2 [für Anweisung / while-Anweisung]
Python if-Anweisung
[Python] if-Anweisung
Python-Grundlagen ② für Anweisung
Python grundlegende if-Anweisung
[Python] für Anweisungsfehler
Python-Liste, für Anweisung, Wörterbuch
[Python / PyQ] 4. Liste zur Anweisung
Einführung in Python For, While
[Python] Iterative Verarbeitung (für, während)
So definieren Sie mehrere Variablen in einer Python for-Anweisung
Drehen Sie ein Array von Zeichenfolgen mit einer for-Anweisung (Python3).
[Python] Was ist eine with-Anweisung?
[Einführung in Python] Wie verwende ich den Operator in in der for-Anweisung?
Python für Anweisung ~ Was ist iterierbar ~
[Python] Richtige Verwendung der if-Anweisung
[Python] Neunundneunzig Tabellen, die for-Anweisungen verwenden
[Python] Dateivorgang mit der if-Anweisung
[Einführung in die Udemy Python3 + -Anwendung] 47. Verarbeiten Sie das Wörterbuch mit einer for-Anweisung
[Python of Hikari-] Kapitel 05-09 Steuerungssyntax (Verwendung von for-Anweisung und while-Anweisung ordnungsgemäß)
Ein nützlicher Hinweis, wenn Sie Python nach langer Zeit verwenden
[Einführung in die Udemy Python3 + -Anwendung] 33. if-Anweisung
Erstellen wir eine virtuelle Umgebung für Python
Ändern Sie die Liste in der for-Anweisung
[Mac] Erstellen einer virtuellen Umgebung für Python
Qt für Python App Desktop App
Holen Sie sich ein Zeichen für Conoha mit Python
Ein Tool zur einfachen Eingabe von Python-Code
Erstellen einer Python-Entwicklungsumgebung für die KI-Entwicklung
Ein Lehrbuch für Anfänger von Python-Anfängern
Drehen Sie in Python mehrere Listen mit for-Anweisung gleichzeitig
while-Anweisung
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung
[Python, Scala] Machen Sie ein Tutorial für Apache Spark
Ich habe eine Python-Wörterbuchdatei für Neocomplete erstellt
Python-Grundlagen (Variablen, Typen, Operatoren, if-Anweisungen, für Anweisungen)
Holen Sie sich ein Ticket für einen Themenpark mit Python
Erstellen Sie mit Minette für Python einen LINE BOT
Ich habe eine Klasse in Python3 und Java geschrieben
Vorgehensweise zum Erstellen eines mit Python erstellten LineBot
Python mit Progate (Wörterbuch, while-Anweisung, break, continue)
Warum ich ein Java-Shop bin und Python starte
[Einführung in die Udemy Python3 + -Anwendung] 40. while else-Anweisung
Python: Bereiten Sie einen Serializer für die Klasseninstanz vor:
[Aktualisierung] Python Syntax Spickzettel für Java Shop
So schreiben Sie einen ShellScript Bash für Anweisung
[Einführung in die Udemy Python3 + -Anwendung] 43. for else-Anweisung
Befehle zum Erstellen einer Python3-Umgebung mit virtualenv
Verfahren zum Erstellen einer Python-Isolationsumgebung (venv-Umgebung)
Hinweise zum Erstellen einer Python-Umgebung durch Anfänger
Lassen Sie uns mit SWIG ein Modul für Python erstellen
[Python] Ich möchte nur den Index verwenden, wenn ich eine Liste mit einer for-Anweisung schleife