Python: Unterschied zwischen den Versionen
(zum-wiki:) |
|||
(5 dazwischenliegende Versionen von einem Benutzer werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Kategorie:Programmiersprachen]] | [[Kategorie:Programmiersprachen]] | ||
− | Ich möchte euch hier noch eine Programmiersprache vorstellen, nämlich '''Python'''. Python gibt es als kostenlosen Download und ihr findet viele gute auch deutschsprachige Tutorials im Internet. Man kann prozedural oder objektorientiert programmieren. Python ist einfach und übersichtlich und damit gut lesbar und | + | Ich möchte euch hier noch eine Programmiersprache vorstellen, nämlich '''Python'''. Python gibt es als kostenlosen Download [http://www.python.org/getit/] und ihr findet viele gute auch deutschsprachige Tutorials im Internet. Man kann prozedural oder auch objektorientiert programmieren, Python schreibt nichts vor. Python ist einfach und übersichtlich und damit gut lesbar und leicht zu erlernen. |
− | Es werden z. B. keine geschweiften Klammern oder Semikolons verwendet, sondern Schachtelung wird durch Einrücken gemacht, Variablen werden bei der ersten Benutzung deklariert. | + | Es werden z. B. keine geschweiften Klammern oder Semikolons verwendet, sondern Schachtelung wird durch Einrücken gemacht, Variablen werden bei der ersten Benutzung deklariert. Man kann sehr leicht Dinge interaktiv ausprobieren in der Python Shell: |
− | + | [[Datei:PythonShell.jpg|600px]] | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | Außerdem ist Python sehr gut für (nicht zu rechenintensive) mathematische "Experimente" geeignet, denn Python unterstützt z.B. komplexe Zahlen als Typ und sehr lange Integer. Wer mal ganz viele Stellen von Pi ausrechnen lassen will, kann das leicht mit Python machen: | |
# -*- coding: iso-8859-1 -*- | # -*- coding: iso-8859-1 -*- | ||
Zeile 23: | Zeile 16: | ||
nPi = 2 | nPi = 2 | ||
dPi = 1 | dPi = 1 | ||
+ | # Zähler und Nenner bestimmen | ||
for k in range(1, 4*max + 1): | for k in range(1, 4*max + 1): | ||
i = i + 1 | i = i + 1 | ||
Zeile 28: | Zeile 22: | ||
dPi = dPi * (2 * i + 1) | dPi = dPi * (2 * i + 1) | ||
nPi = nPi * (2 * i + 1) + n | nPi = nPi * (2 * i + 1) + n | ||
+ | # Ausgabestring initialisieren | ||
Pi = "" | Pi = "" | ||
+ | # Integerdivision | ||
for k in range(1, max + 1): | for k in range(1, max + 1): | ||
i = 0 | i = 0 | ||
Zeile 34: | Zeile 30: | ||
nPi = nPi - dPi | nPi = nPi - dPi | ||
i += 1 | i += 1 | ||
+ | # neue Stelle zu Pi hinzufügen | ||
Pi += str(i) | Pi += str(i) | ||
if k == 1: | if k == 1: | ||
Zeile 46: | Zeile 43: | ||
3,141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006606315588174881520920962829254091715364367892590360011330530548820466521384146951941511609433057270365759591953092186117381932611793105118548074462379962749567351885752724891227938183011949129833673362440656643086021394946395224737190702179860943702770539217176293176752384674818467669405132000568127145263560827785771342757789609173637178721468440901224953430146549585371050792279689258923542019956112129021960864034418159813629774771309960518707211349999998372978049951059731732816096318595024459455346908302642522308253344685035261931188171010003137838752886587533208381420617177669147303598253490428755468731159562863882353787593751957781857780532171226806613001927876611195909216420198 | 3,141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006606315588174881520920962829254091715364367892590360011330530548820466521384146951941511609433057270365759591953092186117381932611793105118548074462379962749567351885752724891227938183011949129833673362440656643086021394946395224737190702179860943702770539217176293176752384674818467669405132000568127145263560827785771342757789609173637178721468440901224953430146549585371050792279689258923542019956112129021960864034418159813629774771309960518707211349999998372978049951059731732816096318595024459455346908302642522308253344685035261931188171010003137838752886587533208381420617177669147303598253490428755468731159562863882353787593751957781857780532171226806613001927876611195909216420198 | ||
− | Die Idee zur Berechnung von Pi stammt (leider) nicht von mir sondern aus einem Scratch Projekt | + | Die Idee zur Berechnung von Pi stammt (leider) nicht von mir, sondern aus einem Scratch Projekt [http://www.scratch.mit.edu/projects/Kinderlabor/2412305], ich habe es dann nur in Python ausprobiert. Hierbei wird eine Reihenentwicklung von Pi genutzt: |
− | Normalerweise wird Python interpretiert. Man kann aber auch Jython verwenden, so dass man in Python Java nutzen kann, damit kann man aus seinen Programmen | + | <math>$ \pi=\frac{2}{1} +\frac{2*1}{1*3}+\frac{2*1*2}{1*3*5}+\frac{2*1*2*3}{1*3*5*7}+...$</math> |
+ | |||
+ | |||
+ | Normalerweise wird Python interpretiert. Man kann aber auch Jython (Java + Python) verwenden, so dass man in Python auch Java nutzen kann, damit kann man aus seinen Programmen z.B. JARs erstellen, die auf anderen Computern ohne installiertes Python laufen. | ||
+ | |||
+ | Ich habe u.a. Python für die Aufgaben des diesjährigen Bundeswettbewerbs Informatik [http://www.bundeswettbewerb-informatik.de/] genutzt (zufällig waren die bestgewerteten Aufgaben alle mit Python gelöst ;-) ). | ||
+ | |||
+ | |||
+ | [[zum-wiki:Python]] |
Aktuelle Version vom 16. Februar 2015, 20:57 Uhr
Ich möchte euch hier noch eine Programmiersprache vorstellen, nämlich Python. Python gibt es als kostenlosen Download [1] und ihr findet viele gute auch deutschsprachige Tutorials im Internet. Man kann prozedural oder auch objektorientiert programmieren, Python schreibt nichts vor. Python ist einfach und übersichtlich und damit gut lesbar und leicht zu erlernen. Es werden z. B. keine geschweiften Klammern oder Semikolons verwendet, sondern Schachtelung wird durch Einrücken gemacht, Variablen werden bei der ersten Benutzung deklariert. Man kann sehr leicht Dinge interaktiv ausprobieren in der Python Shell:
Außerdem ist Python sehr gut für (nicht zu rechenintensive) mathematische "Experimente" geeignet, denn Python unterstützt z.B. komplexe Zahlen als Typ und sehr lange Integer. Wer mal ganz viele Stellen von Pi ausrechnen lassen will, kann das leicht mit Python machen:
# -*- coding: iso-8859-1 -*-
from math import *
def Pi_bestimmen(max): i = 0 n = 2 nPi = 2 dPi = 1 # Zähler und Nenner bestimmen for k in range(1, 4*max + 1): i = i + 1 n = n * i dPi = dPi * (2 * i + 1) nPi = nPi * (2 * i + 1) + n # Ausgabestring initialisieren Pi = "" # Integerdivision for k in range(1, max + 1): i = 0 while nPi >= dPi: nPi = nPi - dPi i += 1 # neue Stelle zu Pi hinzufügen Pi += str(i) if k == 1: Pi += "," nPi = nPi * 10 print (Pi)
Pi_bestimmen(1000)
liefert
3,141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006606315588174881520920962829254091715364367892590360011330530548820466521384146951941511609433057270365759591953092186117381932611793105118548074462379962749567351885752724891227938183011949129833673362440656643086021394946395224737190702179860943702770539217176293176752384674818467669405132000568127145263560827785771342757789609173637178721468440901224953430146549585371050792279689258923542019956112129021960864034418159813629774771309960518707211349999998372978049951059731732816096318595024459455346908302642522308253344685035261931188171010003137838752886587533208381420617177669147303598253490428755468731159562863882353787593751957781857780532171226806613001927876611195909216420198
Die Idee zur Berechnung von Pi stammt (leider) nicht von mir, sondern aus einem Scratch Projekt [2], ich habe es dann nur in Python ausprobiert. Hierbei wird eine Reihenentwicklung von Pi genutzt:
Normalerweise wird Python interpretiert. Man kann aber auch Jython (Java + Python) verwenden, so dass man in Python auch Java nutzen kann, damit kann man aus seinen Programmen z.B. JARs erstellen, die auf anderen Computern ohne installiertes Python laufen.
Ich habe u.a. Python für die Aufgaben des diesjährigen Bundeswettbewerbs Informatik [3] genutzt (zufällig waren die bestgewerteten Aufgaben alle mit Python gelöst ;-) ).