Thesis programming

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
Antworten
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Mittwoch 5. April 2006, 15:53

Code: Alles auswählen

import thesis

THESIS_TOPIC = thesis.get_topic()
years_in_gradschool = 0

while(thesis.funding):
    data = thesis.run_experiment(THESIS_TOPIC)
    GOOD_ENOUGH = thesis.query(thesis.advisor)
    if data > GOOD_ENOUGH:
        thesis.graduate()
        break
    else:
        THESIS_TOPIC = thesis.get_new_topic()
        years_in_gradschool += 1
Habe ich mal unter phdcomics.com gefunden und für Python adaptiert. Bin gerade wieder drüber gestolpert.

SCNR
Christian
BlackJack

Mittwoch 5. April 2006, 22:30

Die ``while`` Schleife gefiel mir nicht so gut. Hier ist eine Iterator-Lösung. :-)

Code: Alles auswählen

import thesis
from itertools import ifilter

topics = ifilter(thesis.funding, thesis.iter_topics())

for years_in_gradschool, thesis_topic in enumerate(topics):
    data = thesis.run_experiment(thesis_topic)
    good_enough = thesis.advisor.query(data)
    if data >= good_enough:
        thesis.graduate()
        break
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Donnerstag 6. April 2006, 08:45

Ich wußte, daß der Stil zu Widerspruch reizen würde, aber es ist eine "1:1 Übersetzung von Pseudo-C", wenn ich das mal so sagen darf. Wie auch immer, Iteratoren mögen zwar besser sein, aber ich möchte Dich auf einen schweren Bug im Programm hinweisen. Es muß so lauten:

Code: Alles auswählen

import thesis
from itertools import ifilter

topics = ifilter(thesis.funding, thesis.iter_topics())

for years_in_gradschool, thesis_topic in enumerate(topics):
    data = thesis.run_experiment(thesis_topic)
    good_enough = thesis.query(thesis.advisor)
    if data >= good_enough:
        thesis.graduate()
        break
Beachte bitte, daß die Bestimmung der Variable good_enough unabhängig von der Datenlage ist, so daß der Vergleich data >= good_enough de facto ebenfalls unabhängig von der Datenlagen ist. Der Vergleich ist notwendig, um die Öffentlichkeit nicht allzusehr zu stören. Die Bestimmung von good_enough auf diese Weise ist die Anpassung des Programms an die Realität.

Gruß,
Christian

PS ... der froh ist einen netten Kerl zum Chef zu haben.
henning
User
Beiträge: 274
Registriert: Dienstag 26. Juli 2005, 18:37

Donnerstag 6. April 2006, 09:34

Hat jemand mal einen Link der erklärt was dieses thesis-programming überhaupt ist?
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Donnerstag 6. April 2006, 09:38

Thesis (englisch): eine Abhandlung über ein Thema, wie sie in wissenschaftlichen Kreisen geschrieben wird.

Thesis-Programming (englisch): scherzhafte Beschreibung des Vorgangs eine Abhandlung zu schreiben, im Verweis auf eine algorithmische Abhandlung des Vorgangs.

Humor (deutsch): durchgefallen. :-)
--- Heiko.
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Freitag 7. April 2006, 08:55

modelnine hat geschrieben: Humor (deutsch): durchgefallen. :-)
Na ja, ist wohl etwas sehr speziell. Ich jedenfalls fand es lustig, gelobe aber Besserung und werde solcherlei Dinge nicht häufig posten.

Gruß,
Christian
Antworten