Μάθημα 5 - Άσκηση

...ασύγχρονα μαθήματα python

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό b_real » 23 Μαρ 2011, 00:49

χαιρεται,βλεπω οτι ξεθαβω θεμα κ προχωραω :P
εχουμε το εξης απλο κωδικα
Spoiler: show
Κώδικας: Επιλογή όλων
class animals:
  posotita = 0
  def __init__(self,onoma,xrwma,podia):
    self.onoma=onoma
    self.xrwma=xrwma
    self.podia=podia
    animals.posotita += 1
    #print 'ok'
  def __del__(self):
    animals.posotita -=1
    print ('phres podi')
   
   
  def howMany():
    '''Prints the current population.'''
    print('We have {0:d} animals.'.format(animals.posotita))
  howMany = staticmethod(howMany)
 
pipi = animals('lala','lalo',4)
pipo = animals('papa','papi',4)
print (animals.howMany())
del pipi
del pipo
print (animals.howMany())

γιατι αν βγαλω τα 2 del οταν το τρεχω μου πεταει; αυτα;;;;
πρεπει οπωσδηποτε να τα καλουμε εφοσον εχουμε ορισει __del__ ;;
Spoiler: show
Exception AttributeError: "'NoneType' object has no attribute 'posotita'" in <bound method animals.__del__ of <__main__.animals object at 0x7f09421ae990>> ignored
Exception AttributeError: "'NoneType' object has no attribute 'posotita'" in <bound method animals.__del__ of <__main__.animals object at 0x7f09421ae8d0>> ignored

επισης οταν το τρεχω ετσι οπως ειναι που εκτυπωνεται το εξης:
Spoiler: show
We have 2 animals.
None
phres podi
phres podi
We have 0 animals.
None

το "None" τι στο καλο ειναι;;;
Επίπεδο γνώσεων: Linux: Μετριο | Προγραμματισμός: Ναι | Αγγλικά : Καλά
Ubuntu 9.04(64bit) AMD Athlon II (AM3/2,8GHz) | 4Gb Ram | Nvidia GeForce 9500GT
b_real
babeTUX
babeTUX
 
Δημοσιεύσεις: 15
Εγγραφή: 25 Μάιος 2009, 14:31
Εκτύπωση

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό sokoban4ever » 24 Μαρ 2011, 03:31

γιατι αν βγαλω τα 2 del οταν το τρεχω μου πεταει; αυτα;;;;

Ποιά έκδοση pyhton χρησιμοποιείς;
σε python 2.6 και 3.1 τουλάχιστον δουλεύει άψογα και όπως το έχεις
μήπως δουλέυεις σε καμια debug ή έχεις κάνεις custum compile ;
Όπως και να έχει (απο την 2.4 και μετά) θα σου είναι πιο έυκολο να βάζεις staticmethod με (@) function decorator
http://docs.python.org/library/function ... lassmethod
Για staticmethod Δες εδώ
http://docs.python.org/library/function ... aticmethod

Spoiler: show
Κώδικας: Επιλογή όλων
>>> class animals:
      posotita = 0
      def __init__(self,onoma,xrwma,podia):
        self.onoma=onoma
        self.xrwma=xrwma
        self.podia=podia
        animals.posotita += 1

      def __del__(self):
        animals.posotita -=1
        print ('phres podi')

      @staticmethod
      def howMany():
        print ('We have {0:d} animals.'.format(animals.posotita))
       
>>> pipi = animals('lala','lalo',4)
>>> pipo = animals('papa','papi',4)
>>> animals.howMany()
We have 2 animals.
>>> del pipi
phres podi
>>> del pipo
phres podi
>>> animals.howMany()
We have 0 animals.
>>> #Σημείωση !!! εδώ η __del__ καλείται αυτόματα για αποδεύμεση χώρου κλπ και η pipi instance (εκδοχή ) ξαναφτιάνεται από τις στάχτες της 
>>> pipi = animals('lala','lalo',4)
>>> pipi = animals('lala','lalo',4)
phres podi
>>> animals.howMany()
We have 1 animals.
>>> #


ένας άλλος τρόπος είναι αυτός με την classmethod
http://docs.python.org/library/function ... lassmethod
πχ
Spoiler: show
Κώδικας: Επιλογή όλων
class animals:
      posotita = 0
      def __init__(self,onoma,xrwma,podia):
        self.onoma=onoma
        self.xrwma=xrwma
        self.podia=podia
        animals.posotita += 1

      def __del__(self):
        animals.posotita -=1
        print ('phres podi')

      @classmethod
      def howMany(self):
        print ('We have {0:d} animals.'.format(self.posotita))
        #print ('We have {0:d} animals.'.format(animals.posotita))


>>> pipi = animals('lala','lalo',4)
>>> pipo = animals('papa','papi',4)
>>> animals.howMany()
We have 2 animals.
>>> del pipo
phres podi
>>> del pipi
phres podi
>>> animals.howMany()
We have 0 animals.



πρεπει οπωσδηποτε να τα καλουμε εφοσον εχουμε ορισει __del__ ;;

Όχι δεν πρέπει.

και τέλος για το None δες εδώ
http://docs.python.org/library/constant ... =none#None
Στην περίπτωση σου επέστρεψε τιμή None από NoneType object
πχ
Κώδικας: Επιλογή όλων
>>>>>> type (animals('Xtapodi','kafe',8).howMany()) ==  type(None)
phres podi
We have 0 animals.
True
>>>type (animals('Xtapodi','kafe',8).howMany())
phres podi
We have 0 animals.
<type 'NoneType'>

Ίσως να είναι καλύτερα... να αποφεύγεις τα τυχαία ονόματα (όπως pipo papi papa popa )
γιατί μπερδεύουν όχι μόνο εσένα
:)
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό b_real » 24 Μαρ 2011, 14:12

ευχαριστω που αχοληθηκες
για τα ονοματα εχεις δικιο απλα ηταν σε στιγμες που ειχα φρικαρει κ εβαζα οτι να'ναι μονο κ μονο για να δω αν λειτουργουνε
Τα τρεχω σε python 3.1.2 και 2.6(αλλαζοντας τα print)
με βαση τον κωδικα που μου εστειλες,αν τρεξω αυτο:
Spoiler: show
Κώδικας: Επιλογή όλων
class animals:
      posotita = 0
      def __init__(self,onoma,xrwma,podia):
        self.onoma=onoma
        self.xrwma=xrwma
        self.podia=podia
        animals.posotita += 1

      def __del__(self):
        animals.posotita -=1
        print ('phres podi')

      @staticmethod
      def howMany():
        print ('We have {0:d} animals.'.format(animals.posotita))
       
pipi = animals('lala','lalo',4)
animals.howMany()

μου πεταει αυτο:
Spoiler: show
Κώδικας: Επιλογή όλων
We have 1 animals.
Exception AttributeError: "'NoneType' object has no attribute 'posotita'" in <bound method animals.__del__ of <__main__.animals object at 0x7fe8fc0dd890>> ignored

το ιδιο "Exception AttributeError:" πεταει στον κωδικα του andreas_g (απο την προηγουμενη σελιδα)αν δεν βαλω τα del zwo1 κλπ...δηλαδη και καλειται ο καταστροφεας και πεταει αυτο το Exception AttributeError:

ειδα οτι το τρεχεις σε interpreter.Αν το ετρεχες κανονικα μηπως σου πεταει κ σενα οτι κ σε μενα;;

επισης κανοντας cp απο το tutorial τρεχω το παρακατω:
Spoiler: show
Κώδικας: Επιλογή όλων
class Robot:
  '''Represents a robot, with a name.'''
   # Μια μεταβλητή κλάσης, που μετρά τον αριθμό των ρομπότ
  population = 0
  def __init__(self, name):
    '''Initializes the data.'''
    self.name = name
    print('(Initializing {0})'.format(self.name))
    #Όταν δημιουργείται το άτομο, προστίθεται το ρομπότ στον
    Robot.population += 1
   
  def __del__(self):
    '''I am dying.'''
    print('{0} is being destroyed!'.format(self.name))
    Robot.population -= 1
    if Robot.population == 0:
      print('{0} was the last one.'.format(self.name))
    else:
      print('There are still {0:d} robot working.'.format(Robot.population))
     
  def sayHi(self):
    '''Greeting by the robot.
      Yeah, they can do that.'''
    print('Greetings, my masters call me {0}.'.format(self.name))
   
  def howMany():
    '''Prints the current population.'''
    print('We have {0:d} robots.'.format(Robot.population))
  howMany = staticmethod(howMany)
 
droid1 = Robot('R2-D2')
droid1.sayHi()
Robot.howMany()
droid2 = Robot('C-3PO')
droid2.sayHi()
Robot.howMany()
print("\nRobots can do some work here.\n")
print("Robots have finished their work. So let's destroy them.")

Robot.howMany()

και εχω τα παρακατω αποτελεσματα:
Spoiler: show
Κώδικας: Επιλογή όλων
(Initializing R2-D2)
Greetings, my masters call me R2-D2.
We have 1 robots.
(Initializing C-3PO)
Greetings, my masters call me C-3PO.
We have 2 robots.

Robots can do some work here.

Robots have finished their work. So let's destroy them.
We have 2 robots.
R2-D2 is being destroyed!
There are still 1 robot working.
C-3PO is being destroyed!
C-3PO was the last one.

Αν δεν κανω λαθος δηλαδη παλι καλουνται οι καταστροφεις. :(

χιλια συγνωμη αν γινομαι κουραστικος απλα προσπαθω κ εγω να καταλαβω τι γινεται
Επίπεδο γνώσεων: Linux: Μετριο | Προγραμματισμός: Ναι | Αγγλικά : Καλά
Ubuntu 9.04(64bit) AMD Athlon II (AM3/2,8GHz) | 4Gb Ram | Nvidia GeForce 9500GT
b_real
babeTUX
babeTUX
 
Δημοσιεύσεις: 15
Εγγραφή: 25 Μάιος 2009, 14:31
Εκτύπωση

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό sokoban4ever » 25 Μαρ 2011, 04:05

ειδα οτι το τρεχεις σε interpreter.Αν το ετρεχες κανονικα μηπως σου πεταει κ σενα οτι κ σε μενα;;

Εμένα o πρώτο σου κώδικας χτυπάει με TypeError
Κώδικας: Επιλογή όλων
TypeError: unbound method howMany() must be called with animals instance as first argument (got nothing instead)

αλλά AttributeError όχι
μετά τις αλλαγές δεν μου βγάζει error

Εσυ δηλαδή με τι το τρέχεις αν όχι με interpreter ;

Έχει σημασία αυτό γιατί επιρεάζει αρκετά πράγματα όπως το περιβάλλον της python ( globals , buffer κλπ)
Το καλύτερο από όλα είναι ο idle -editor ο επίσημος της python έχει ότι χρειάζεσαι .
Όλα τα προγράμματα χρησιμοποιούν κάποιον python interpreter αλλά αλλάζουν το περιβάλλον του interpreter
Με κάποιος τρόπο ο destructor καλείται είτε από το πρόγραμμα που χρησιμοποιείς

Στο παρακάτω παράδειγμα δεν χρησιμοποιώ τον τελεστή ανάθεσης (asinment operator) άρα δεν το σώζω
σαν αποτέλεσμα από την στιγμή που εκτελείτε ο constructor ( με το __init__) αμέσως να εκτελείτε και ο destructor...
Υπάρχει δηλαδή θέμα χρονισμού κατά την διαγραφή ενός αντικειμένου για αυτό υπάρχει και o garbage collector (gc) στις γλώσσες με interpreter...
Αν και μιάζουν η builtin function del και άλλη η μέθοδος __del__ (Destructor) δεν είναι ίδιες
Κώδικας: Επιλογή όλων
>>>>>> type (animals('Xtapodi','kafe',8).howMany()) ==  type(None)
phres podi
We have 0 animals.
True

Όταν καταστρέφεται επιστρέφει και τιμή None όπως και σε εσένα
οπότε πιθανόν για κάποιο λόγο ο interpreter σου δεν προλαβαίνει να διαγράψει τελείως το instance...

Περίεργο μου φένεται όλο αυτό.... για αυτό θα το δούμε και θα βρούμε και ποιο ξεκάθαρη απάντηση σιγά σιγά
:)

Πώς εκτελείς τα προγράμματα με ποιό IDE ; μεσω ποιού προγράμματος
μήπως τα εκτελείς από κονσόλα και αν ναι πως;

Ο destructor χρησιμοποιείται __del__ με προσοχή διότι όπως λέει και στο παρακάτω κείμενο
απο την python όταν καλείται ότι exception παρουσιαστεί κάτω από το __del__ παρακάμτεται ....
http://docs.python.org/reference/datamo ... ct.__del__

Warning
Due to the precarious circumstances under which __del__() methods are invoked, exceptions that occur during their execution are ignored, and a warning is printed to sys.stderr instead. Also, when __del__() is invoked in response to a module being deleted (e.g., when execution of the program is done), other globals referenced by the __del__() method may already have been deleted or in the process of being torn down (e.g. the import machinery shutting down). For this reason, __del__() methods should do the absolute minimum needed to maintain external invariants. Starting with version 1.5, Python guarantees that globals whose name begins with a single underscore are deleted from their module before other globals are deleted; if no other references to such globals exist, this may help in assuring that imported modules are still available at the time when the __del__() method is called.
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό b_real » 25 Μαρ 2011, 13:12

για τον interpreter εννοουσα οτι δεν ανοιγω κονσολα παταω python κ αρχιζω κ γραφω κωδικα...
Αυτο που κανω ειναι να το γραφω σε Kate ή Komodo edit κ μετα να ανοιγω terminal και να δινω 'python3 ... .py'
το εχω δοκιμασει σε ubuntu 10.10 και σε Os X(τρεχοντας απο terminal και απο NetBeans)

edit:
Εχουμε το εξης κωδικα
Spoiler: show
Κώδικας: Επιλογή όλων
class Animals:
  population = 0
  def __init__ (self,name,color,legs):
    self.name   = name
    self.color  = color
    self. legs  = legs
    Animals.population +=1
    print 'new animal created'
   
  def introduce (self):
    print 'Hi my name is '+ self.name
   
  def __del__(self):
    Animals.population -=1
   
  @staticmethod
  def howmany():
    print 'There is  %s animals left' %(Animals.population)
   
#create objects
Dog = Animals('jack','brown',4)
Cat = Animals('jen','white',4)

#how many animals
Animals.howmany()
#delete dog
del Dog
#remaing animals
Animals.howmany()

που πεταει το γνωστο(πλεον) λαθος
Spoiler: show
Κώδικας: Επιλογή όλων
new animal created
new animal created
There is  2 animals left
There is  1 animals left
Exception AttributeError: "'NoneType' object has no attribute 'population'" in <bound method Animals.__del__ of <__main__.Animals instance at 0x7f1dfe3a5170>> ignored

αλλαζουμε τα
Κώδικας: Επιλογή όλων
Animals.population +=1
και
Κώδικας: Επιλογή όλων
Animals.population -=1

σε
Κώδικας: Επιλογή όλων
self.__class__.population +=1
και
Κώδικας: Επιλογή όλων
self.__class__.population -=1

αρα ο κωδικας μας γινεται:
Spoiler: show
Κώδικας: Επιλογή όλων
class Animals:
  population = 0
  def __init__ (self,name,color,legs):
    self.name   = name
    self.color  = color
    self. legs  = legs
    self.__class__.population +=1
    print 'new animal created'
   
  def introduce (self):
    print 'Hi my name is '+ self.name
   
  def __del__(self):
    self.__class__.population -=1
   
  @staticmethod
  def howmany():
    print 'There is  %s animals left' %(Animals.population)
   
#create objects
Dog = Animals('jack','brown',4)
Cat = Animals('jen','white',4)

#how many
Animals.howmany()

del Dog

Animals.howmany()

που επιτελους εξαφανιζει το Exception AttributeError
στo προηγουμενo προγραμμα αυτο το None παραμενει αλλα δεν με πολυαπασχολει εφοσον ετρεξε ενα φυσιολογικα :roll:
Επίπεδο γνώσεων: Linux: Μετριο | Προγραμματισμός: Ναι | Αγγλικά : Καλά
Ubuntu 9.04(64bit) AMD Athlon II (AM3/2,8GHz) | 4Gb Ram | Nvidia GeForce 9500GT
b_real
babeTUX
babeTUX
 
Δημοσιεύσεις: 15
Εγγραφή: 25 Μάιος 2009, 14:31
Εκτύπωση

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό sokoban4ever » 27 Μαρ 2011, 04:32

Μπράβο
Είχα σκεφτεί να στο δώσω σαν παράδειγμα (την πρόσβαση σε class variable μέσα από instance)
αλλά δεν ήθελα να μπερδέψω τα πράγματα.
αλλά έλα μου που τελικά εσένα το έβγαζε αυτό το error και εμένα δεν το βγάζει...
( Σίγουρα δεν έχεις κάνει compile εσύ την python από το source code της; :problem: :? )

Έτσι όπως το έκανες έχεις πρόσβαση στην κλάση μέσα από το instance .

Από ότι φένεται διαγραφόταν πρίν την ώρα του και σου έβγαζε error
έτσι με το self.__class__ όμως φένεται ότι διαγράφεται στο σωστό χρόνο ...


Ευχαριστώ που με έκανες να το ψάξω και εγώ και θα το ξαναψάξω κάποια άλλη μέρα γιατί με εκνευρισε
αυτό το error .Ειλικρινά δεν το περίμενα αυτό από την python.


Όπως και να έχει βρήκες μια λύση
και σημασία έχει ότι τι βρήκες εσύ.

:-)
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό medigeek » 27 Μαρ 2011, 13:00

Να που μάθαμε και κάτι καινούργιο. :)
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό midkin » 05 Ιούλ 2014, 18:45

Αφού διάβασα και ξανά διάβασα τις κλάσεις από 2 βιβλία και παρακολούθησα 2 video tutorials σχετικά με αυτές, μιας και είχα απορίες, προσπάθησα να λύσω την άσκηση και νομίζω πως τα κατάφερα.
Δεν είδα καθόλου τις λύσεις των υπόλοιπων παιδιών, οπότε αν κάποιος μπορεί και θέλει, ας ρίξει μια ματιά στη δική μου.
Ευχαριστώ.

Κώδικας: Επιλογή όλων
#Filename: askisimathima5.py

class zoo:
   population = 0
   def __init__(self, name, legs, weight, species):
      zoo.population += 1
      self.name = name
      self.legs = legs
      self.weight = weight
      self.species = species
      print('A {0} has been born! :) The {0} has {1} legs, weights about {2} kilos and it\'s a {3}.'.format(self.name, self.legs, self.weight, self. species))
      print('We now have ', zoo.population, ' animal(s).')

   def __del__(self):
      zoo.population -= 1
      print('Unfortunately our {0} has died! :('.format(self.name))
      print('We now have ', zoo.population, ' animal(s).')

cat = zoo('cat', 4, 7, 'mammal')
dog = zoo('dog', 4, 20, 'mammal')
crocodile = zoo('crocodile', 4, 120, 'reptilian')
hen = zoo('hen', 2, 4, 'bird')

del cat
del dog
del crocodile
del hen
Γνώσεις ⇛ Linux: Χαμηλό ┃ Προγραμματισμός: Χαμηλό ┃ Αγγλικά: Πολύ Καλά
Λειτουργικό: Laptop Lenovo G505s με Windows 8.1 / Ubuntu 14.10 & Mac OS X 10.10 μέσω VirtualBox
Προδιαγραφές ⇛ AMD A8 τετραπύρηνος │ 8 GB RAM |
Άβαταρ μέλους
midkin
babeTUX
babeTUX
 
Δημοσιεύσεις: 44
Εγγραφή: 05 Σεπ 2009, 21:14
Τοποθεσία: Κομοτηνή
Εκτύπωση

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό midkin » 06 Ιούλ 2014, 21:27

Να υποθέσω πως η άσκηση μου είναι ολόσωστη; :D
Να κοιτάξω τις λύσεις των άλλων;
Γνώσεις ⇛ Linux: Χαμηλό ┃ Προγραμματισμός: Χαμηλό ┃ Αγγλικά: Πολύ Καλά
Λειτουργικό: Laptop Lenovo G505s με Windows 8.1 / Ubuntu 14.10 & Mac OS X 10.10 μέσω VirtualBox
Προδιαγραφές ⇛ AMD A8 τετραπύρηνος │ 8 GB RAM |
Άβαταρ μέλους
midkin
babeTUX
babeTUX
 
Δημοσιεύσεις: 44
Εγγραφή: 05 Σεπ 2009, 21:14
Τοποθεσία: Κομοτηνή
Εκτύπωση

Re: Μάθημα 5 - Άσκηση

Δημοσίευσηαπό Ilias95 » 10 Ιούλ 2014, 01:14

Εντάξει φαίνεται.
Συνηθίζεται τα ονόματα των κλάσεων λόγω σύμβασης να αρχίζουν με κεφαλαίο γράμμα.
Επίσης μην πολυ-χρησιμοποιείς το del statement (και την magic method __del__) μέχρι να καταλαβαίνεις απολύτως τι κάνει.
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

Προηγούμενη

Επιστροφή στο Μαθήματα python