Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
talit:pythonforcsharp [2020-02-09 21:59] – sca | talit:pythonforcsharp [2022-12-12 15:48] (aktuell) – sca | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== - Python for C# developer | + | ====== - Python for C# developers |
- | ===== - Print ===== | + | ===== - Shortcuts in Visual Studio (C#) ===== |
+ | |||
+ | Die CTRL-Taste bleibt jeweils gedrückt: | ||
+ | |||
+ | * CTRL K + D: Code formatieren (Klammern und Einrückungen richten, hat keinen Einfluss auf Logik des Codes) | ||
+ | * CTRL K + C: kommentiert ausgewählte Codezeilen | ||
+ | * CTRL K + U: unkommentiert ausgewähle Codezeilen | ||
+ | |||
+ | |||
+ | ===== - Ausgabe in Konsole | ||
Ausgabe in der Konsole: | Ausgabe in der Konsole: | ||
Zeile 14: | Zeile 23: | ||
print(" | print(" | ||
</ | </ | ||
+ | |||
+ | |||
===== - Typen ===== | ===== - Typen ===== | ||
Zeile 43: | Zeile 54: | ||
</ | </ | ||
- | Dies ist nicht möglich in C# | + | Dies ist nicht möglich in C#: |
+ | <code csharp> | ||
+ | int a = 7; | ||
+ | string b = "Ich bin jetzt ein String"; | ||
+ | bool c = false; | ||
+ | </ | ||
Ein **Kommentar** wird in C# mit dem //\\// und in Python mit dem //#// | Ein **Kommentar** wird in C# mit dem //\\// und in Python mit dem //#// | ||
Zeile 85: | Zeile 101: | ||
- | ===== - Methoden | + | ===== - Funktionen |
- | In C# wird eine Methode | + | In C# wird eine Funktion |
<code csharp> | <code csharp> | ||
- | public static string | + | public static string |
{ | { | ||
- | a.ToString() + b.ToString() + c.ToString(); | + | |
} | } | ||
</ | </ | ||
- | Diese Methode | + | Diese Funktion |
- | Die äquivalente | + | Die äquivalente |
<code python> | <code python> | ||
Zeile 106: | Zeile 122: | ||
Erklärung: | Erklärung: | ||
- | * Mit **def** wird eine Methode | + | * Mit **def** wird eine Funktion |
- | * Der **Typ des Rückgabewerts** wird nicht angegeben. Hat eine Methode | + | * Der **Typ des Rückgabewerts** wird nicht angegeben. Hat eine Funktion |
* Der Typ der Argumente (//a,b,c//) wird nicht angegeben. | * Der Typ der Argumente (//a,b,c//) wird nicht angegeben. | ||
- | * In C# wird der Codeblock, der zur Methode | + | * In C# wird der Codeblock, der zur Funktion |
- | ===== - Schlaufen | + | ===== - Schleifen |
- | ==== - For-Schlaufe | + | ==== - For-Schleife |
C#: | C#: | ||
Zeile 131: | Zeile 147: | ||
</ | </ | ||
- | Beachte, dass in Python die **Einrückung** wahnsinnig wichtig ist. Betrachte dazu den folgenden | + | Beachte, dass in Python die **Einrückung** wahnsinnig wichtig ist. In C# ist die Einrückung irrelevant. Um den Code übersichtlich zu gestalten lohnt es sich aber, die einzelnen Codezeilen sinnvoll einzurücken. Mit dem Shortcut Ctrl + K + D (Ctrl bleibt gedrückt) übernimmt wird diese Arbeit vom Visual Studio übernommen. Wende diesen Shortcut exzessiv an! |
+ | |||
+ | Der folgende | ||
C#: | C#: | ||
Zeile 159: | Zeile 177: | ||
</ | </ | ||
- | Der erste und dritte print-Befehl gehört zur ersten for-Schlaufe. Der zweite print-Befehl (doppel-Tab) gehört zur zweiten for-Schlaufe. | + | Der erste und dritte print-Befehl gehört zur ersten for-Schleife. Der zweite print-Befehl (doppel-Tab) gehört zur zweiten for-Schleife. |
- | + | ||
- | ==== - While-Schlaufe | + | In beiden Sprachen kann ganz einfach durch eine Liste (resp. ein Array) durch itteriert werden: |
+ | |||
+ | C#: | ||
+ | <code csharp> | ||
+ | foreach (var a in A) | ||
+ | { | ||
+ | Console.WriteLine(a); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Python: | ||
+ | <code python> | ||
+ | for a in A: | ||
+ | print(a) | ||
+ | </ | ||
+ | ==== - While-Schleife | ||
C#: | C#: |