AntMe Versuch...

Stellt hier eure Projekte vor.
Internetseiten, Skripte, und alles andere bzgl. Python.
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Freitag 28. November 2008, 09:10

DeJe hat geschrieben:a) Nein. Wenn später zusätzliche "Spieler"-Klassen dazu kommen wird es kompliziert welche Viecher z.B. ein Bug angreifen kann. ;)
Ich habe das jetzt mal über set() versucht. Das Ergebnis war sehr frustrierend, in Bezug auf Performance. Ich bleibe erstmal bei INT und nutze '&' und '|'. Das hat den Vorteil das ich mich damit bestens auskenne und es verdammt schnell ist. :D
Wenn du solche Lowlevel Optimierungen magst solltest du C programmieren und nicht Python ;)
[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
DeJe
User
Beiträge: 39
Registriert: Sonntag 23. November 2008, 19:38

Freitag 28. November 2008, 10:10

Ja, da hast du sicher recht. ;)
Aber bei dieser Applikation sei es mir vielleicht verziehen mit & und | zu arbeiten statt Sets. Als nächstes Projekt suche ich mir etwas was keine solch hohen Ansprüche an die Performance stellt. :D
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Freitag 28. November 2008, 13:15

DeJe hat geschrieben:Ja, da hast du sicher recht. ;)
Aber bei dieser Applikation sei es mir vielleicht verziehen mit & und | zu arbeiten statt Sets. Als nächstes Projekt suche ich mir etwas was keine solch hohen Ansprüche an die Performance stellt. :D
Ich frage mich mehr warum die Bitfields und ifs an Stelle von Vererbung verwendest. Ein Bitfield an Stelle eines Sets kann ich noch als Legitim ansehen. :wink:
[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
DeJe
User
Beiträge: 39
Registriert: Sonntag 23. November 2008, 19:38

Freitag 28. November 2008, 15:33

Kannst du mir mal ein Beispiel zeigen wie du das genau meinst?
Sozusagen für jede Kategorie eine Stellvertreterklasse?
Wie kann man am schnellsten auf Zugehörigkeit einer Klasse prüfen? Instanz.__class__...?
Dann bekomme ich bei Vergleichen aber auch wieder Stringvergleiche rein.

Oder habe ich dich flasch verstanden?
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Freitag 28. November 2008, 16:11

DeJe hat geschrieben:Kannst du mir mal ein Beispiel zeigen wie du das genau meinst?
Sozusagen für jede Kategorie eine Stellvertreterklasse?
Wie kann man am schnellsten auf Zugehörigkeit einer Klasse prüfen? Instanz.__class__...?
Dann bekomme ich bei Vergleichen aber auch wieder Stringvergleiche rein.

Oder habe ich dich flasch verstanden?
isinstance(obj, class) ;)

Und das wären wohl keine reinen Tagging Klassen, sondern diese können / sollen auch Logik enthalten.

Aus:

Code: Alles auswählen

if obj.type == X:
something_for_x()
elif obj.type == Y:
something_for_y()
Wird:

Code: Alles auswählen

obj.something()
Es ist sogar möglich das der Code dadurch wieder vergleichbar schnell/schneller wird. Er ist jedoch sicherlich besser wartbar, erweiterbar und testbar!
[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
DeJe
User
Beiträge: 39
Registriert: Sonntag 23. November 2008, 19:38

Freitag 28. November 2008, 17:36

Danke.
Ich habe das jetzt mal umgebaut. Ist schon eleganter als mit Bitfields, unbestritten. ;) Die Performance ist nur ein klein wenig schlechter, damit kann ich leben.
DeJe
User
Beiträge: 39
Registriert: Sonntag 23. November 2008, 19:38

Samstag 29. November 2008, 20:57

Nachdem ich das ganze jetzt noch einmal umgebaut habe poste ich mal eine neue Version.
sidlegui.py
sidle.py
myants.py
@Veers, hast du dir das etwa so vorgestellt?
fonzy
User
Beiträge: 9
Registriert: Mittwoch 18. Januar 2012, 17:21

Dienstag 3. Juli 2012, 12:46

Hallo DeJe,

leider funktioiniert der Link zu Deinem AntMe-Source nicht mehr. Hast Du ihn noch? Kannst du ihn vielleicht hier nochmal zur Verfügung stellen?

Danke für Deine Hilfe.
Bis dann
Fonzy
webspider
User
Beiträge: 485
Registriert: Sonntag 19. Juni 2011, 13:41

Dienstag 3. Juli 2012, 13:40

Ob das wohl nach fast vier Jahren so erstaunlich ist?
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Dienstag 3. Juli 2012, 14:19

Naja, an sich sollte der Content zum Pastebin schon irgendwann wieder restauriert werden, vielleicht mal mitsuhiko deswegen nerven.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Antworten