Συντονιστής: konnn


έγραψε:Your programming framework probably defines what an "object" is like; usually with a base class. For example: java.lang.Object, GObject, QObject, python's base Object, or whatever. Let's call this a native object.


def foo(x, y, z):
print(x, y, z)_tuple = ('one', 'two', 'three')
def foo(arguments):
a, b, c = arguments
print(a, b, c)
pmav99 έγραψε:Explicit is better than implicit.
>>> def foo(x, y, z):
... print(x, y, z)
...
>>> a = foo
>>> a('one', 'two', 'three')
one two three>>> _tuple = ('one', 'two', 'three')
>>> foo_tuple
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'foo_tuple' is not defined
>>>
Η σχέση έχει να κάνει με το ότι αφού η συνάρτηση δέχεται 3 ορίσματα, καλύτερα να περάσεις 3 ορίσματα και όχι ένα. Και αφού δε σου άρεσε αυτό, δες και τα υπόλοιπα που νομίζω ότι κολλάνε (imho)Ilias95 έγραψε:
Δεν βλέπω τι σχέση έχει εδώ.
έγραψε:Simple is better than complex.
Sparse is better than dense.
Readability counts.
In the face of ambiguity, refuse the temptation to guess.
If the implementation is hard to explain, it's a bad idea.
a, b = b, a
έγραψε:There should be one-- and preferably only one --obvious way to do it.

Αν θυμάμαι καλά κάτι τέτοιο επιτρέπει η ipython, αν δώσεις ένα command line argument, αλλά αν για κάποιον η πληκτρολόγηση είναι πρόβλημα καλύτερα να μάθει τυφλόIlias95 έγραψε:
Μήπως υπάρχει κάποιος τρόπος να δηλώσουμε ότι αυτό που ακολουθεί της συνάρτησης foo είναι τα ορίσματα χωρίς να βάλουμε τις παρενθέσεις;
