Gegenüberstellung von Java und Python: Unterschied zwischen den Versionen

K
Keine Bearbeitungszusammenfassung
 
(6 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Status/In Bearbeitung von|jneug}}
{{Status/In Bearbeitung von|jneug}}{{Kurzlink|java-python}}
Auf den ersten Blick wirken Java und Python wie sehr unterschiedliche Sprachen. Bei genauerer Betrachtung stellt man aber fest, dass sie viele Gemeinsamkeiten haben. Java ist grundsätzlich eine Objektorientierte Sprache, wobei einzelne Methoden imperativ (von oben nach unten) programmiert und ausgeführt werden. Python legt kein primäres Paradigma fest, und erlaubt sowohl imperative, als auch objektorientierte Programmierung.  
Auf den ersten Blick wirken Java und Python wie sehr unterschiedliche Sprachen. Bei genauerer Betrachtung stellt man aber fest, dass sie viele Gemeinsamkeiten haben. Java ist grundsätzlich eine Objektorientierte Sprache, wobei einzelne Methoden imperativ (von oben nach unten) programmiert und ausgeführt werden. Python legt kein primäres Paradigma fest, und erlaubt sowohl imperative, als auch objektorientierte Programmierung.  


Das heißt, dass beide Sprachen für die Programmierung imperative Konstrollstrukturen (Schleifen, bedingte Anweisungen, ...). Hast Du diese Konzepte in einer der Sprachen verstanden, kannst Du sie leicht auf die andere anwenden. Du musst nur die schreibweise (Syntax) der anderen Sprache kennen.  
Das heißt, dass beide Sprachen für die Programmierung imperative Konstrollstrukturen (Schleifen, bedingte Anweisungen, ...). Hast Du diese Konzepte in einer der Sprachen verstanden, kannst Du sie leicht auf die andere anwenden. Du musst nur die schreibweise (Syntax) der anderen Sprache kennen.  


Auf dieser Seite findest Du eine Gegenüberstellung der wichtigsten Kontrollstrukturen und Konzepte von Java und Python, un dir einen schnellen Einstieg in Python zu erlauben.  
Auf dieser Seite findest Du eine Gegenüberstellung der wichtigsten Kontrollstrukturen und Konzepte von Java und Python, und dir einen schnellen Einstieg in Python zu erlauben.  


== Grundsätzliches ==
== Grundsätzliches ==
Zeile 62: Zeile 62:
# gibt es keine
# gibt es keine
# mehrzeiligen Kommentare
# mehrzeiligen Kommentare
</syntaxhighlight>
|}
=== Ein- und Ausgaben ===
{| {{prettytable}}
! Java
! Python
|-
| <syntaxhighlight lang="java">
System.out.println("Hallo Welt!");
</syntaxhighlight>
| <syntaxhighlight lang="python">
print("Hallo Welt!")
</syntaxhighlight>
|-
| <syntaxhighlight lang="java">
Scanner input = new Scanner(System.in);
System.out.print("Gib eine Zahl ein: ");
int eingabe = input.nextInt();
</syntaxhighlight>
| <syntaxhighlight lang="python">
eingabe = input("Gib eine Zahl ein: ")
</syntaxhighlight>
</syntaxhighlight>
|}
|}
Zeile 98: Zeile 121:
</syntaxhighlight>
</syntaxhighlight>
| <syntaxhighlight lang="python">
| <syntaxhighlight lang="python">
eineZahlOderSo = 4;
eineZahlOderSo = 4
einTextOderSo = "Hallo Welt!"
einTextOderSo = "Hallo Welt!"


Zeile 171: Zeile 194:
|}
|}


== Funktionen ==
== Methoden / Funktionen ==
 
{| {{prettytable}}
! Java
! Python
|-
| <syntaxhighlight lang="java">
public int berechne( int pZahl, String pText ) {
    if( pText.equals("quadrieren") ) {
        return pZahl*pZahl;
    } else {
        return pZahl;
    }
}
 
System.out.println(berechne(4, "quadrieren"));
</syntaxhighlight>
| <syntaxhighlight lang="python">
def berechne( zahl, text ):
    if text == "quadrieren":
        return zahl*zahl
    else:
        return zahl
 
print(berechne(4, "quadrieren"))
</syntaxhighlight>
|}
 
=== Pakete / Module importieren ===
{| {{prettytable}}
! Java
! Python
|-
| <syntaxhighlight lang="java">
import java.io.File;
import java.util.Random;
</syntaxhighlight>
| <syntaxhighlight lang="python">
import os
from random import randint
</syntaxhighlight>
|}
 
== Einige übliche Operationen ==
 
=== Mit Strings arbeiten ===
{| {{prettytable}}
! Java
! Python
|-
| <syntaxhighlight lang="java">
System.out.printf("%02d / %05.2f\n", 3, 4.2568);
// 03 / 04.26
</syntaxhighlight>
| <syntaxhighlight lang="python">
print("{:02d} / {:05.2f}".format(3, 4.2568))
# 03 / 04.26
</syntaxhighlight>
|-
| <syntaxhighlight lang="java">
int eineZahl = 56;
double eineKommazahl = 12.00001;
String einText = "Hallo Welt!";
System.out.printf("Zahl: %02d\nKommazahl: %05.2f\nText: %s\n", eineZahl, eineKommazahl, einText);
// Zahl: 56
// Kommazahl:  12.00
// Text: Hallo Welt!
</syntaxhighlight>
| <syntaxhighlight lang="python">
eineZahl = 56
eineKommazahl = 12.00001
einText = "Hallo Welt!"
print(f"Zahl: {eineZahl:02d}\nKommazahl:  {eineKommazahl:05.2f}\nText: {einText}")
# Zahl: 56
# Kommazahl:  12.00
# Text: Hallo Welt!
</syntaxhighlight>
|}
 
=== Zufallszahlen ===
{| {{prettytable}}
! Java
! Python
|-
| <syntaxhighlight lang="java">
// Klasse importieren
import java.util.Random;
 
// In der Methode
Random r = new Random();
int zufall1 = r.nextInt(100); // Zahl zwichen 0 und 100 (100 exklusive)
int zufall = 50 + r.nextInt(50); // Zahl zwischen 50 und 100 (100 exklusive)
</syntaxhighlight>
| <syntaxhighlight lang="python">
from random import randint
 
zufall1 = randint(0, 100) // Zahl zwischen 0 und 100 (100 inklusive)
zufall2 = randint(50, 100) // Zahl zwischen 50 und 100 (100 inklusive)
</syntaxhighlight>
|}