@jonas:
- zwischen Funktionsname und Parameterliste kommt kein Leerzeichen
- du solltest zum Zusammesetzen von Strings String Formatting benutzen
- um das Plus gehört auf jede Seite ein Leerzeichen
- da es eine Funktion ist, sollte sie vielleicht besser "make_homework" heißen (abgesehen davon, dass es "do_homework" heißen müsste)
- Exceptions solltest du als SystemError("two girls...) werfen
(ich konnte einfach nicht widerstehen )
Funktion
EyDu hat geschrieben:Code: Alles auswählen
import functools, operator make_adder = functools.partial(functools.partial, operator.add)
PEP8 hat geschrieben: - Imports should usually be on separate lines, e.g.:
Yes:
import os
import sys
No:
import sys, os
http://www.kinderpornos.info
So habe ich das in Analysis gelernt und sollte, wenn ich mich richtig erinnere, auch für Funktionen bei Python gelten.Craven hat geschrieben:Aber doch nicht zwingend.gkuhl hat geschrieben:Eine Funktion f von der Menge X in die Menge Y ist eine Relation zwischen X und Y, für die gilt, dass es für alle x ∈ X genau ein y ∈ Y gibt mit (x,y) ∈ f. Einige Beispiele sind da z.B. die Identität, die Besselfunktionen oder die Riemann-Zeta-Funktion.
Wenn ich mich nicht täusche, müsste es so heißen:gkuhl hat geschrieben:So habe ich das in Analysis gelernt und sollte, wenn ich mich richtig erinnere, auch für Funktionen bei Python gelten.Craven hat geschrieben:Aber doch nicht zwingend.gkuhl hat geschrieben:Eine Funktion f von der Menge X in die Menge Y ist eine Relation zwischen X und Y, für die gilt, dass es für alle x ∈ X genau ein y ∈ Y gibt mit (x,y) ∈ f. Einige Beispiele sind da z.B. die Identität, die Besselfunktionen oder die Riemann-Zeta-Funktion.
Code: Alles auswählen
Eine Funktion ist eineindeutig, wenn sie jedes Element von X auf genau ein Element von Y abbildet.
Oder schon?
[code]q = 'q = %s; print q %% repr(q)'; print q % repr(q) [/code]
Funktionen müssen aber nicht zwingend eineindeutig/injektiv sein. Es ist aber die notwendige Bedingung für die Umkehrfunktion. Da ist Python aber auch eindeutig, denn eine Funktion gibt immer ein Objekt (kann auch ein Tupel sein) zurück, und das Ergebnis von sqrt(4) ist 2 und nicht -2.
> Also muss nicht jedes Element von Y mit einem von X verbunden werden.
Das gilt z.B. auch für f(x) = 1. Hier wird jeden Element x aus X der Wert 1 aus Y zugewiesen. Trotzdem könnte Y die Menge der reellen Zahlen sein. Das hat meines Wissen nichts mit Injektivität zu tun. Vermutlich meinst du Bijektivität, wo zusätzlich gilt, dass jedes Element aus Y genau einem Element aus X zugeordnet wird.
PS: Hab gerade noch ein bisschen gesucht und es scheint so, dass außerhalb von Fachliteratur der Begriff eineindeutig sowohl für injektiv, als auch bijektiv benutzt wird.
> Also muss nicht jedes Element von Y mit einem von X verbunden werden.
Das gilt z.B. auch für f(x) = 1. Hier wird jeden Element x aus X der Wert 1 aus Y zugewiesen. Trotzdem könnte Y die Menge der reellen Zahlen sein. Das hat meines Wissen nichts mit Injektivität zu tun. Vermutlich meinst du Bijektivität, wo zusätzlich gilt, dass jedes Element aus Y genau einem Element aus X zugeordnet wird.
PS: Hab gerade noch ein bisschen gesucht und es scheint so, dass außerhalb von Fachliteratur der Begriff eineindeutig sowohl für injektiv, als auch bijektiv benutzt wird.
Besser:gkuhl hat geschrieben:Eine Funktion f von der Menge X in die Menge Y ist eine Relation zwischen X und Y, für die gilt, dass es für alle x ∈ X genau ein y ∈ Y gibt mit (x,y) ∈ f. Einige Beispiele sind da z.B. die Identität, die Besselfunktionen oder die Riemann-Zeta-Funktion.
Eine Funktion f von der Menge X in die Menge Y ist eine Relation zwischen X und Y, für die gilt, dass es für jedes x ∈ X genau ein y ∈ Y gibt mit (x,y) ∈ f.
@Funktionsdefinition-Diskussion:
Code: Alles auswählen
import random
def func(x):
return x * random.random()
Das Leben ist wie ein Tennisball.
Und dann wäre da noch das Problem was die echten Mathematiker mit "partiellen Funktionen" haben.
Hallo!
Leider geht keine mehr aus die Threadstarter ein.
Sicher geht es um Funktionen und was sie von Prozeduren
unterscheidet. Und wofür man so etwas in der Informatik braucht.
Was sind Parameter und was bewirken sie?
Evtl. auch Realisierung über den Stack.
Spezielle Begriffe: Lambda, Callback, void, Methode usw.
Rekursion: Fakultät und Fibonacci sind da wohl Standardbeispiele.
Ein bisschen habt ihr es euch zu leicht gemacht.
Niemand sagt, dass ihr die Hausaufgaben anderer Leute
lösen müsst.
Gruss
PyFan
Leider geht keine mehr aus die Threadstarter ein.
Sicher geht es um Funktionen und was sie von Prozeduren
unterscheidet. Und wofür man so etwas in der Informatik braucht.
Was sind Parameter und was bewirken sie?
Evtl. auch Realisierung über den Stack.
Spezielle Begriffe: Lambda, Callback, void, Methode usw.
Rekursion: Fakultät und Fibonacci sind da wohl Standardbeispiele.
Ein bisschen habt ihr es euch zu leicht gemacht.
Niemand sagt, dass ihr die Hausaufgaben anderer Leute
lösen müsst.
Gruss
PyFan
Sollen wir raten, was für eine Antwort gewünscht ist? Auf konkrete Fragen kann man leicht eingehen, andernfalls ... naja, dieser Thread ist ein gutes Beispiel Wenn die Fragen präzisiert werden, dann werden diese auch sicher beantwortet.
Das Leben ist wie ein Tennisball.
Hallo,
Das Problem ist, dass die Fragenden keinen Plan haben, was
sie genau fragen (oder machen) sollen. Sie können das nicht so präziese
aktikulieren wie ihr Profiprogrammierer. Und die Frage ist recht - abstrakt.
Aber so sind sie nun mal, die Lehrer.
Leider habt ihr die Threadstarter nun verschreckt und sie trauen sich nicht
mehr sich zu melden.
Gruss
PyFan
Das Problem ist, dass die Fragenden keinen Plan haben, was
sie genau fragen (oder machen) sollen. Sie können das nicht so präziese
aktikulieren wie ihr Profiprogrammierer. Und die Frage ist recht - abstrakt.
Aber so sind sie nun mal, die Lehrer.
Leider habt ihr die Threadstarter nun verschreckt und sie trauen sich nicht
mehr sich zu melden.
Gruss
PyFan
-
- User
- Beiträge: 136
- Registriert: Sonntag 15. Januar 2006, 20:31
- Wohnort: Greifswald
- Kontaktdaten:
Ich würde mal folgendes raten: Der Infolehrer hat gerade erklärt, dass es sich innerhalb eines Programms wiederholende Abschnitte gibt, die man als Funktionen aus dem Spaghetti-Code herauslösen und wiederverwerten kann.
Aufgabe: Beweise dass Du das verstanden hast, indem Du Beispiele für Funktionen formulierst.
Aufgabe: Beweise dass Du das verstanden hast, indem Du Beispiele für Funktionen formulierst.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Also um
anzuzeigen gibt es eine bessere Funktion:
Code: Alles auswählen
bash: shutdown: command not found
Code: Alles auswählen
def fun():
print "bash: shutdown: command not found"
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Es gibt hier eigentlich nur eine Funktion, die es wert ist, genannt zu werden:
Stefan :)
Code: Alles auswählen
def Y(r): return (lambda f: f(f))(lambda f: r(lambda x: f(f)(x)))
-
- User
- Beiträge: 4
- Registriert: Mittwoch 10. Juni 2009, 11:14
Hallo, nach langer leserei & googelei melden wir uns zurück
Okay, wir haben nichts verstanden
aber trotzdem danke für eure Hilfe... Man merkt sofort, dass ihr Profiprogrammierer seid
Wir versuchen mal, es etwas professioneller zu gestalten:
Theoretisch ist dies keine "Hausaufgabe", sondern ein FREIWILLIGER Akt, um unsere Noten zu verbessern. Wir wollen unseren Mitschülern eine Funktion vorstellen & Beispiele geben (EINFACHE!!)
Dies gestaltet sich scheinbar als schwer, da wir eine Funktion nicht verstehen bzw. kein Bild davon haben, was dies ist...
Wir würden uns über einfach gehaltene Antworten freuen (wo keine Fachbegriffe, die die Welt nicht braucht, benutzt werden)
lg Jeanine & Lisa
Okay, wir haben nichts verstanden
aber trotzdem danke für eure Hilfe... Man merkt sofort, dass ihr Profiprogrammierer seid
Wir versuchen mal, es etwas professioneller zu gestalten:
Theoretisch ist dies keine "Hausaufgabe", sondern ein FREIWILLIGER Akt, um unsere Noten zu verbessern. Wir wollen unseren Mitschülern eine Funktion vorstellen & Beispiele geben (EINFACHE!!)
Dies gestaltet sich scheinbar als schwer, da wir eine Funktion nicht verstehen bzw. kein Bild davon haben, was dies ist...
Wir würden uns über einfach gehaltene Antworten freuen (wo keine Fachbegriffe, die die Welt nicht braucht, benutzt werden)
lg Jeanine & Lisa