Die Suche ergab 9 Treffer

von Zambo
Dienstag 12. September 2006, 11:32
Forum: Offtopic
Thema: Ruby <-> Python
Antworten: 46
Zugriffe: 5966

Meiner Meinung nach ist das Programm immer noch um einiges verständlicher als ... Tut auch was anders.... :roll: Ach ja :? Dein Quelltext sieht in Python so aus: def my_sum(iterable, default=None): try: return reduce(lambda a, b: a + b, iterable) except TypeError: if default is None: raise ValueErr...
von Zambo
Dienstag 12. September 2006, 08:32
Forum: Offtopic
Thema: Ruby <-> Python
Antworten: 46
Zugriffe: 5966

Hallo BlackJack, ich habe den Default-Parameter nicht eingebaut, weil ich ihn überflüssig finde. Aber wenn du umbedingt eine 1 zu 1 übersetzung haben willst: def my_sum(iterable,default=nil) ergebnis = iterable.inject { |v,n| v+n } if ergebnis.nil? then raise "empty iterable without default&quo...
von Zambo
Dienstag 12. September 2006, 06:52
Forum: Offtopic
Thema: Ruby <-> Python
Antworten: 46
Zugriffe: 5966

Die zweite Version sollte nur zeigen, das es auch kürzer geht. Ich komme ja eigentlich aus der C++ Ecke und da gibts auch so Konstruktionen. Auch wenn ich sie ehrlich gesagt noch nie benutzt habe :wink: Aber natürlich kann man es auch so schreiben: def my_sum(iterable) ergebnis = iterable.inject { |...
von Zambo
Montag 11. September 2006, 20:02
Forum: Offtopic
Thema: Ruby <-> Python
Antworten: 46
Zugriffe: 5966

Also wenn du lieber eine Null zurück kriegen willst, könnte ich folgenden Code anbieten: def my_sum(iterable) ergebnis = iterable.inject { |v,n| v+n } return 0 if ergebnis.nil? return ergebnis end oder def my_sum(iterable) ergebnis = iterable.inject { |v,n| v+n } return ergebnis.nil? ? 0 : ergebnis ...
von Zambo
Montag 11. September 2006, 15:08
Forum: Offtopic
Thema: Ruby <-> Python
Antworten: 46
Zugriffe: 5966

Also mal abgesehen davon, das ich es nicht so machen würde: def my_sum(iterable) iterable.inject { |v,n| v+n } end print my_sum(['H', 'a', 'l', 'l', 'o']) # -> 'Hallo' print my_sum(1..5) # -> 15 print my_sum([]) # -> nil print my_sum('') # -> nil Wie du siehst, entsteht bei Ruby überhaupt keine Fehl...
von Zambo
Montag 11. September 2006, 11:53
Forum: Offtopic
Thema: Ruby <-> Python
Antworten: 46
Zugriffe: 5966

Das mit den Blöcken hat BlackJack schon zugegeben, dass das in Python so nicht möglich ist. Was natürlich schon für sich alleine ein Grund seien kann, Ruby vorzuziehen. Das ist aber nur ein kosmetischer Unterschied. Man kann halt keine anonymen Blöcke definieren, na und, dann gibt man dem Kind halt...
von Zambo
Montag 11. September 2006, 10:00
Forum: Offtopic
Thema: Ruby <-> Python
Antworten: 46
Zugriffe: 5966

Also zu Punkt 1 und 4 muß ich euch recht geben. Das geht in Python. Mal abgesehen davon, dass mir der Ruby-Code besser gefällt. Aber darum geht es nicht. Das mit den Blöcken hat BlackJack schon zugegeben, dass das in Python so nicht möglich ist. Was natürlich schon für sich alleine ein Grund seien k...
von Zambo
Montag 11. September 2006, 08:58
Forum: Offtopic
Thema: Ruby <-> Python
Antworten: 46
Zugriffe: 5966

Ok :wink:
Ich bin beeindruckt. Ich wußte nicht, dass das geht. Aber der Rest stimmt trotzdem 8)
von Zambo
Montag 11. September 2006, 08:12
Forum: Offtopic
Thema: Ruby <-> Python
Antworten: 46
Zugriffe: 5966

Hi, jetzt oute ich mich einfach mal als bekennender Ruby-User und möchte mal ein wenig darstellen, warum ich Ruby doch ein wenig besser finde, als Python. Wobei mir Python natürlich auch ganz gut gefällt. Aber es fehlen für mich einfach die kleinen Besonderheiten von Ruby. 1.) Es ist z.B. ohne Probl...