> I don't know if I should be inheriting file or just using a file 
> object.
>   How would I determine which one would be more appropriate?
Inheritance is often refered to as an IS relation, whereas using an 
attribute
is a HAS relation.

If you inherit from file, all operations for files should be valif for 
your
class also. Usually the file-operations would be directly inherited and 
not
overwritten.

However, if you don't want to expose all file functionalities, a HAS 
relation
is more appropriate. if you plan to use your class as a file handle, 
e.g. for
formatting output in a special way, I woould prefer to make the file an 
attribute:

class myFile :
        def __init__(self,fname,mode="r") :
                self.file = file(fname,mode)

        def write_formatted(self,string) :
                # format string
                self.file.write()


If you would tell as your use case, it would be easier to give you an 
advice.

- harold -

--
Yesterday is but today's memory and Tomorrow is today's dream.
--

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to