Mein erstes kleines Programm...

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
kbr
User
Beiträge: 1487
Registriert: Mittwoch 15. Oktober 2008, 09:27

@Sophus: Jede Sprache verfolgt ein oder mehrere Paradigmen, bei Python zusätzlich noch verbunden mit einem Programmierstil, der als "pythonisch" bezeichnet wird. Was das ist, erschließt sich dem Python-Neuling üblicherweise erst nach einiger Zeit und dem lesen von (gutem) Quellcode. Selbstverständlich kann man für Kommentare oder Label (etc.) deutsch, englisch oder sonst was verwenden. Da die Keywords aber englisch sind und ggf. auch andere später einmal an Deinem Code interessiert sein könnten — gleich wo sie auf dieser Erde wohnen — ist es sowohl sprachlich harmonisch, und nicht zuletzt auch sozial, möglichst englisch zu verwenden. Die Zeiten in denen Deutsch und Latein internationale Gelehrtensprachen waren, sind historisch. Das folgende Beispiel mag vielleicht auch nicht perfekt sein, zeigt Dir aber schon einmal ein pythonisches Beispiel:

Code: Alles auswählen

def get_floats(numbers):
    """
    numbers is a list of strings representing numeric values optional
    containing ',' instead of '.' as decimal point. This function
    returns a new list of floats, converted from the given numbers.
    """
    return [float(item.replace(',', '.')) for item in numbers]
Benutzeravatar
Sophus
User
Beiträge: 1109
Registriert: Freitag 25. April 2014, 12:46
Wohnort: Osnabrück

kbr hat geschrieben:@Sophus: Jede Sprache verfolgt ein oder mehrere Paradigmen, bei Python zusätzlich noch verbunden mit einem Programmierstil, der als "pythonisch" bezeichnet wird. Was das ist, erschließt sich dem Python-Neuling üblicherweise erst nach einiger Zeit und dem lesen von (gutem) Quellcode. Selbstverständlich kann man für Kommentare oder Label (etc.) deutsch, englisch oder sonst was verwenden. Da die Keywords aber englisch sind und ggf. auch andere später einmal an Deinem Code interessiert sein könnten — gleich wo sie auf dieser Erde wohnen — ist es sowohl sprachlich harmonisch, und nicht zuletzt auch sozial, möglichst englisch zu verwenden. Die Zeiten in denen Deutsch und Latein internationale Gelehrtensprachen waren, sind historisch. Das folgende Beispiel mag vielleicht auch nicht perfekt sein, zeigt Dir aber schon einmal ein pythonisches Beispiel:

Code: Alles auswählen

def get_floats(numbers):
    """
    numbers is a list of strings representing numeric values optional
    containing ',' instead of '.' as decimal point. This function
    returns a new list of floats, converted from the given numbers.
    """
    return [float(item.replace(',', '.')) for item in numbers]
Hallo kbr, vielen Dank für deine Anmerkung. Ich glaube, ich weiß was du mit "pythonisch" meinst. Egal in welcher Programmiersprache man sich bewegt, jedoch sollte man sich in der Programmiersprache auch entsprechend verhalten, sprich, so zu denken. Beispiel: Will man Englisch lernen, soll man auch wie ein Engländer/Amerikaner denken, damit man die Mentalität, Philosophie und Struktur der Sprache auch verinnerlicht bzw. sie lebt - beispielsweise, dass englische Sätze kurz gehalten, wenig Kommata gesetzt, und die Sätze wenig verschachtelt werden etc. Würde man aber deutsch "denken" und dabei englisch lernen, so käme man sehr schnell in die Verlegenheit die Struktur der deutschen Sprache über die englische Sprache zu stülpen und wundert sich, dass man überall aneckt. Jedoch sehe ich es gar nicht verkehrt Querverweise zu ziehen. Beispielsweise hat Latein sehr viele Wörter und ähnliche Strukturen, die man in der deutschen Sprache wiederfindet. So wäre es doch hilfreich, wenn man das Wissen, was man in VB6 gelernt hat auch in Python anzuwenden. Zum Beispiel kann ich in Python die Funktionen verstehen, weil ich sie in VB6 gelernt habe Die Übergabe von Werten an die Funktion ist nahezu identisch.
BlackJack

@Sophus: Die Übergabe von Werten ist nahezu identisch wenn man mal ausser acht lässt das es in Python von den vier Variationen von Wert-/Referenztypen und ``ByVal``/``ByRef`` nur eine Einzige gibt. Funktionen selbst sind in Python doch deutlich anders als in VB6. Es sind auch Objekte und damit Werte, man kann sie also als Argumente übergeben und auch als Rückgabwerte bekommen und es gibt einen Haufen Funktionen höherer Ordung schon in der Standardbibliothek die eben genau das tun. Es gibt lexikalische Closures und anonyme Funktionen. Eben so die grundlegenden Sachen die man von funktionalen Programmiersprachen kennt. Und Generatorfunktionen kennt VB6 soweit ich weiss auch nicht.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

@Sophus: Ein kleiner Tipp noch für das Posten hier: Vermeide doch die ständigen "Full Quotes", also das vollständige zitieren des Beitrags, auf den Du Dich beziehst. Zitiere nur den wirklich relevanten Abschnitt oder kennzeichne Kommentare durch ein "@Benutzername" um klar zu machen, auf wen Du Dich gerade beziehst. Das macht den Thread leichter lesbar :-)
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Antworten