Die Suche ergab 17 Treffer

von nunatak
Freitag 27. Januar 2017, 09:27
Forum: Allgemeine Fragen
Thema: Ergebnis im Multiprocessing
Antworten: 11
Zugriffe: 2557

Re: Ergebnis im Multiprocessing

Ja, ich denke auch, dass diese Beschleunigung auch auf anderen Effekten beruht. Eigentlich sollte es max. 8x so schnell sein mit den 8 Cores. Mit "async" meinst du das asyncio Modul , das seit Python 3.4 in der Standardbibliothek ist? Habe auch schon gehört, dass es gut sein soll. Steht noch auf der ...
von nunatak
Donnerstag 26. Januar 2017, 15:25
Forum: Allgemeine Fragen
Thema: Ergebnis im Multiprocessing
Antworten: 11
Zugriffe: 2557

Re: Ergebnis im Multiprocessing

Hab eure Vorschläge mal eingebaut. Mit dem islice sieht das auf jeden Fall deutlich eleganter aus. Allerdings ist die Laufzeit jetzt bei 172 sek. Zuvor waren es nur 42. Werde noch prüfen woran genau das liegt.

EDIT: Beim zweiten Mal war's wieder schneller. 43 sek.


import io, os
import sys ...
von nunatak
Donnerstag 26. Januar 2017, 14:13
Forum: Allgemeine Fragen
Thema: Ergebnis im Multiprocessing
Antworten: 11
Zugriffe: 2557

Re: Ergebnis im Multiprocessing

Ok, jetzt hab ich dir Lösung. Danke BlackJack mit imap() funktioniert es super. Und 42 Sek. für alle 94.000 Dateien im Vergleich zu 1322 Sek. bei Single-Processing kann sich doch sehr gut sehen lassen!


def processFile(filename):
xmlname = '{}.xml'.format(os.path.splitext(filename)[0])
gezippt ...
von nunatak
Donnerstag 26. Januar 2017, 13:05
Forum: Allgemeine Fragen
Thema: Ergebnis im Multiprocessing
Antworten: 11
Zugriffe: 2557

Re: Ergebnis im Multiprocessing

Hallo BlackJack,

hast natürlich Recht, da gibt es aus PEP8-Sicht vieles zu kritistieren und einige Dinge habe ich bisher echt nicht auf dem Schirm. Danke z.B. für den Hinweis zu os.path.splitext() und os.path.join(). Werde ich in Zukunft einsetzen.

Aber wie gesagt, es handelt sich um ...
von nunatak
Donnerstag 26. Januar 2017, 12:31
Forum: Allgemeine Fragen
Thema: Ergebnis im Multiprocessing
Antworten: 11
Zugriffe: 2557

Re: Ergebnis im Multiprocessing

Ah, danke BlackJack! Hatte mich schon gefragt, wieso das so unschön aussieht. ;)
von nunatak
Donnerstag 26. Januar 2017, 12:15
Forum: Allgemeine Fragen
Thema: Ergebnis im Multiprocessing
Antworten: 11
Zugriffe: 2557

Ergebnis im Multiprocessing

Hallo,

ich schreibe gerade eine Routine mit der ich sehr viele (ca. 100.000) XML Dateien verarbeiten muss. Im ersten Schritt, als Vorselektion will ich im Header nach einem bestimmten String schauen, da ich dadurch die tatsächlich per lxml zu verarbeitende Anzahl deutlich reduzieren kann. Dafür ...
von nunatak
Dienstag 4. Oktober 2016, 08:33
Forum: Allgemeine Fragen
Thema: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)
Antworten: 11
Zugriffe: 3432

Re: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)

Ah ok. as_dict() ist quasi schon builtin. self.__dict__
von nunatak
Dienstag 4. Oktober 2016, 08:27
Forum: Allgemeine Fragen
Thema: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)
Antworten: 11
Zugriffe: 3432

Re: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)

Wie soll so eine as_dict()-Methode aussehen? Verstehe ich das richtig, diese soll mir das gesamte Objekt als Dictionary ausgeben?

@Sirius3: OK, ich denke drüber nach. Hast Recht, im Grunde werden die Objekte nicht über den Instanznamen aufgerufen, sondern in irgendeiner Schleife.
von nunatak
Dienstag 4. Oktober 2016, 07:51
Forum: Allgemeine Fragen
Thema: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)
Antworten: 11
Zugriffe: 3432

Re: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)

Ist es wirklich sinnvoll ein DIctionary als Container für alle Objekte zu verwenden. Ich dachte das könnte mit zunehmender Anzahl Performance-Probleme bereiten. Wahrscheinlich nicht in meinem konkreten keinen Testspiel, aber ich versuche es halt von Anfang an etwas skalierbar zu machen um nicht ...
von nunatak
Dienstag 4. Oktober 2016, 07:33
Forum: Allgemeine Fragen
Thema: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)
Antworten: 11
Zugriffe: 3432

Re: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)

Bzw. Namen von Instanzen, Objekten.

Zum Testen habe ich das gestern bei ein paar Orcs z.B. so gemacht:


for x in range(random.randint(1, 5)):
g.NPCs['orc{}'.format(x)] = NPC()


g. war in diesem Fall, ebenfalls aus Testzwecken eine leere, globale Containerklasse um darin meine Objekte zu ...
von nunatak
Montag 3. Oktober 2016, 21:49
Forum: Allgemeine Fragen
Thema: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)
Antworten: 11
Zugriffe: 3432

Re: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)

Danke für die Tipps. Auf die Idee mit der entsprechenden Methode bin ich auch vorhin gekommen. Werde ich versuchen. Und wie gebe ich der Methode den vergebenen Variablennamen mit (meist dynamisch erzeugt) unter dem das Objekt gespeichert und hinterher wieder hergestellt werden soll?
von nunatak
Montag 3. Oktober 2016, 20:59
Forum: Allgemeine Fragen
Thema: OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)
Antworten: 11
Zugriffe: 3432

OOP-RPG: Spielstand abspeichern (pickle/shelve vs. ORM)

Hallo,

ich versuche mich mittels eines kleinen RPG ein bisschen mit dem OOP Ansatz vertraut zu machen. Hierbei will ich den Spielstand natürlich auch abspeichern und zu einem späteren Zeitpunkt fortfahren können. Um auch ein kleines Übungsprogramm so anzulegen, dass es theoretisch auch wachsen kann ...
von nunatak
Freitag 23. September 2016, 14:52
Forum: Allgemeine Fragen
Thema: String zerlegen
Antworten: 7
Zugriffe: 8601

Re: String zerlegen

Du kannst die Teile auch eins nach dem anderen zerlegen:


>>> string = 'Land:Deutschland_Stadt:Berlin_Platform:Web_seite'
>>> s = string.split('_', 1)
>>> s
['Land:Deutschland', 'Stadt:Berlin_Platform:Web_seite']
>>>


Und dann immer im Wechsel nach _ dann nach : teilen, bis alle Teile durch sind.
von nunatak
Freitag 23. September 2016, 14:34
Forum: Datenbankprogrammierung mit Python
Thema: PostgreSQL Meldungen mit psycopg2 abfangen
Antworten: 4
Zugriffe: 2353

Re: PostgreSQL Meldungen mit psycopg2 abfangen

Sorry, da hast du natürlich Recht!

Habe das vorhin in der virtuellen Umgebung ausprobiert:


>>> query = "SELECT * FROM schema.table1 LIMIT 1"
>>> try:
... cur.execute(query)
... rows = cur.fetchall()
... except psycopg2.Error as e:
... print(e.pgerror)
...

Die Unicode Encoding Fehler entstehen ...
von nunatak
Freitag 23. September 2016, 12:33
Forum: Datenbankprogrammierung mit Python
Thema: PostgreSQL Meldungen mit psycopg2 abfangen
Antworten: 4
Zugriffe: 2353

Re: PostgreSQL Meldungen mit psycopg2 abfangen

Habe jetzt nochmal ein bisschen damit rumprobiert. Nach einigen Versuchen bekomme ich jetzt doch die richtigen Fehlermeldungen zurück. Allerdings kommt es dabei zu einem Encoding-Problem:

Traceback (most recent call last):
File "<stdin>", line 2, in <module>
psycopg2.ProgrammingError: FEHLER ...
von nunatak
Donnerstag 22. September 2016, 16:18
Forum: Datenbankprogrammierung mit Python
Thema: PostgreSQL Meldungen mit psycopg2 abfangen
Antworten: 4
Zugriffe: 2353

PostgreSQL Meldungen mit psycopg2 abfangen

Hallo,

ich nutze relativ viel psycopg2 um mit Skripten verschiedene Datenbankinteraktionen zu machen. Jetzt hatte ich mal versucht die SQL-Fehlermeldungen abzufangen. Das ist mir leider nicht so richtig gelungen. Ich habe mich an diese Beispiele hier gehalten:
http://initd.org/psycopg/docs/module ...
von nunatak
Montag 22. Dezember 2014, 13:31
Forum: Allgemeine Fragen
Thema: Rasterbild (Karte) aus Datensatz (Listenmatrix) erstellen
Antworten: 1
Zugriffe: 716

Rasterbild (Karte) aus Datensatz (Listenmatrix) erstellen

Hallo,

ich schreibe derzeit an einem kleinen Terminal basierten (mit Curses) Adventure. Etwas Rogue-like, aber nicht ganz so. Z.b. die Karte wird nicht vor Spielbeginn komplett generiert, sondern während der Spieler herumläuft, wird diese durch verschiedene Zufallsalgorithmen erzeugt. In Python ...