Die Suche ergab 272 Treffer

von b.esser-wisser
Dienstag 29. Juni 2010, 09:37
Forum: Allgemeine Fragen
Thema: Brauche Übersetzungshilfe vom Programm C zum Programm Python
Antworten: 39
Zugriffe: 1867

Re: Brauche Übersetzungshilfe vom Programm C zum Programm Py

@depp24:
die Note hat aber nix mit deinen Python-Kenntnissen zu tun, oder?
von b.esser-wisser
Montag 28. Juni 2010, 17:07
Forum: Allgemeine Fragen
Thema: Schleife beenden
Antworten: 15
Zugriffe: 28940

Re: Schleife beenden

Es gibt noch "else" nach den Schleifen: In [3]: for i in xrange(10): ...: for j in xrange(10): ...: x = [i, j] ...: if x == [5,4]: ...: break ...: else: # DIESES else gehört zu dem 2. for - NICHT zu dem if! ...: continue ...: break In [4]: print x Das sieht aber alles nicht besonders schön aus - evt...
von b.esser-wisser
Donnerstag 24. Juni 2010, 17:45
Forum: Allgemeine Fragen
Thema: Generator vs List-Comprehension vs while-Schleife...
Antworten: 14
Zugriffe: 1321

Re: Generator vs List-Comprehension vs while-Schleife...

Das einzige, was du da 'optimieren' solltest ist das 'datetime.timedelta(CONSTANT)' - du brauchst da nicht jedes mal ein neues, aber gleiches Objekt. Ansonsten geht Lesbarkeit immer vor ("readability counts" und "beautiful is better than ugly" aus dem Python-Zen). Irgendwo hatte ich auch noch gelese...
von b.esser-wisser
Donnerstag 24. Juni 2010, 14:41
Forum: Allgemeine Fragen
Thema: Generator vs List-Comprehension vs while-Schleife...
Antworten: 14
Zugriffe: 1321

Re: Generator vs List-Comprehension vs while-Schleife...

Und wenn man das Programm so umschreibt, dass offensichtlich wird, was da passiert, wird's noch schneller (~10 mal so schnell wie list_while2(): def list_for2(count): date = datetime.date.today() date_list = [] t = datetime.timedelta(1) append = date_list.append for i in xrange(1, count): date += t ...
von b.esser-wisser
Montag 21. Juni 2010, 18:23
Forum: Allgemeine Fragen
Thema: Excel VBA Makro mit Python öffnen
Antworten: 4
Zugriffe: 957

Re: Excel VBA Makro mit Python öffnen

google schlägt "xlApp.run('Makro1')" vor ...

disclaimer:
ich hab kein ms-office/teile davon hier, ich hab nicht vor das auszuprobieren, ich hab ja eh keine Ahnung etc. pp.
von b.esser-wisser
Donnerstag 10. Juni 2010, 16:52
Forum: Allgemeine Fragen
Thema: input() reagiert komisch
Antworten: 13
Zugriffe: 1555

Re: input() reagiert komisch

hendrikS hat geschrieben:Ich vermisse zwar nach wie vor manchmal die History, aber man gewoehnt sich dran.
..<alt> + <p>, oder meinst du da was ganz anderes?
Aber ich benutze normalerweise Ipython (da funzen die u""-Literals nicht, "u=lambda s: s.decode(sys.stdin.encoding)" hilft als würg-around).

hth, Jörg
von b.esser-wisser
Mittwoch 9. Juni 2010, 17:51
Forum: Allgemeine Fragen
Thema: Umleiten der Ausgaben in eine Datei
Antworten: 5
Zugriffe: 1486

Re: Umleiten der Ausgaben in eine Datei

Koordinier das schreiben mit einer(-em?) threading.Lock()
oder
Schreib in den threads in ein Queue.Queue() un dlass einen (extra) thread in die Datei schreiben
oder
am besten:
Benutz das logging modul - das funktioniert 1A mit threads
hth, Jörg
edit: lauter typos
von b.esser-wisser
Dienstag 8. Juni 2010, 20:22
Forum: Allgemeine Fragen
Thema: Buffon Nadelproblem
Antworten: 38
Zugriffe: 2652

Re: Buffon Nadelproblem

b und c sind die 'Länge' der Nadel auf der y- bzw. x-Achse, x+-c/2, y+-b/2 sind dann die Koordinaten der Nadelenden - sind doch ganz normale geometrische Funktionen (Tip: aufmalen).
hth, Jörg
von b.esser-wisser
Montag 7. Juni 2010, 19:27
Forum: Allgemeine Fragen
Thema: Buffon Nadelproblem
Antworten: 38
Zugriffe: 2652

Re: Buffon Nadelproblem

Ich bin bei 203, durch den letzten Trick ist die Schleife evtl. eins zu kurz :oops:
Disclaimer: Der link ist nicht für Anfänger und erst recht nicht dazu da,irgendwas davon in einem richtigen Programm zu verwenden.
von b.esser-wisser
Montag 7. Juni 2010, 13:12
Forum: Allgemeine Fragen
Thema: liste auslesen nach Kriterien
Antworten: 7
Zugriffe: 526

Re: liste auslesen nach Kriterien

Das zählen geht z.B. mit collections.defaultdict(): import collections def count(numbers, counters=None): if counters is None: counters = collections.defaultdict(int) for number in numbers: counters[number] += 1 return counters Für alles andere poste mal mehr Details, Beispielcode etc. hth, Jörg Edi...
von b.esser-wisser
Sonntag 6. Juni 2010, 20:19
Forum: Allgemeine Fragen
Thema: Buffon Nadelproblem
Antworten: 38
Zugriffe: 2652

Re: Buffon Nadelproblem

An die 0oxx-Schreibweise hatte ich nicht gedacht, ich dachte die gäbe es erst ab python 3.x - vielleicht sollte ich mir die "what's new"-Seite mal genauer ansehen :oops:
von b.esser-wisser
Sonntag 6. Juni 2010, 19:45
Forum: Allgemeine Fragen
Thema: Buffon Nadelproblem
Antworten: 38
Zugriffe: 2652

Re: Buffon Nadelproblem

215, Ich geb's erst mal auf :(
Mein Ansatz mit m(x+c,x-c) als Ersatz für "intp(x+c) != intp(x-c)" hat's nicht gebracht (abgesehen von "m=lambda a,b:any((a>=1>b,a<0,b>=1,b<0))" :twisted: ).

Btw.: Warum ist "1or 0" korrekt, aber "0or 1" ein Syntaxfehler? (Bug in python 2.6.5?)

hth, Jörg
von b.esser-wisser
Sonntag 6. Juni 2010, 19:36
Forum: Codesnippets
Thema: Decoder - Einige Fehler
Antworten: 11
Zugriffe: 1934

Re: Decoder - Einige Fehler

Warum kann man LOWER_BOUND und UPPER_BOUND nicht gleich 32 und 127 in dezimal Schreibweise übergeben? Natürlich kann man das - es gibt eben viele verschiedene Arten Zahlen zu notieren, so dass ich (nicht besonders erfolgreich, zugegeben) versucht habe eine zu finden, die gut beschreibt wo diese Zah...
von b.esser-wisser
Sonntag 6. Juni 2010, 17:28
Forum: Allgemeine Fragen
Thema: Buffon Nadelproblem
Antworten: 38
Zugriffe: 2652

Re: Buffon Nadelproblem

@BlackJack:
Ich komme auf 218 - die import'e reißen mich da rein :(
Aber meine intp()-Version 'gefällt' mir

Code: Alles auswählen

intp=lambda n:n>1 or-(n<0)or 0
von b.esser-wisser
Sonntag 6. Juni 2010, 14:17
Forum: Codesnippets
Thema: Decoder - Einige Fehler
Antworten: 11
Zugriffe: 1934

Re: Decoder - Einige Fehler

Meinst du dann sowas: LOWER_BOUND, UPPER_BOUND = ord(" ") , 0x7F """32 und 127, d.h. alle ASCII-Glyphen""" def calculate_shift(n): return n % (UPPER_BOUND - LOWER_BOUND) def encode(s): shift_distance = calculate_shift(len(s)) encoded = [] for c in s: tmp = ord(c) + shift_distance if tmp > UPPER_BOUN...