On 18/03/2011 20:13, monkeys paw wrote:
I have the following file:
FileInfo.py:
import UserDict
class FileInfo(UserDict):
"store file metadata"
def __init__(self, filename=None):
UserDict.__init__(self)
self["name"] = filename
When i import it like so:
import FileInfo
i get this error:
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
File "FileInfo.py", line 3, in <module>
class FileInfo(UserDict):
TypeError: Error when calling the metaclass bases
module.__init__() takes at most 2 arguments (3 given)
What is causing the error?
You're importing the module "UserDict" and then trying to create a
subclass of it.
The module "UserDict" contains the class "UserDict".
You could write either:
import UserDict
class FileInfo(UserDict.UserDict):
or:
from UserDict import UserDict
class FileInfo(UserDict):
--
http://mail.python.org/mailman/listinfo/python-list