"special_dragonfly" <[EMAIL PROTECTED]> wrote in message 
news:[EMAIL PROTECTED]
>
> "Bruno Desthuilliers" <[EMAIL PROTECTED]> 
> wrote in message news:[EMAIL PROTECTED]
>> special_dragonfly a écrit :
>> (snip)
>>> I've managed to solve the problem, I really was just being a dunce. 
>>> Here's how incase anyone is wondering:
>>>
>>> class MyClass:
>>>     def __init__(self):
>>>         name=""
>>> dict={}
>>> dict[0]=[]
>>> dict[0].append(MyClass())
>>> dict[0][0].name="Hello"
>>> print dict[0][0].name
>>>
>>> I'm sorry if I've wasted anyones time, although if there's a better way 
>>> of doing the above I'd still be interested to know.
>>
>> # unless you need pre 2.3.x compat, better to use newstyle classes
>> class MyClass(object):
>>   # use the initializer to initialize your instance
>>   def __init__(self, name=''):
>>     # the use of 'self' is mandatory, else you only have a local var
>>     self.name = name
>>
>> # don't use builtin names as identifiers - unless you really want to
>> # shadow the builtins
>> d = {0:[MyClass('hello')}
>> d[0].append(MyClass('goodbye'))
>> d.setdefault(1, []).append(MyClass('Yo'))
>> print d
>>
>> HTH
>


Is there anyway for python to consider the values within a string when 
entering the data into a dictionary. I know that isn't very clear so here's 
an example:

class MyClass(object):
    def __init__(self,name="",age=""):
        self.name=name
        self.age=age

data="Gary,50"
d={0:[MyClass(data)]}
data="Adam,25"
d[0].append(MyClass(data))

The data is coming from a text file working on a line by line basis. I've 
just tried and I'm just getting the full string in the first field. That 
seems logical, now I don't want it to though!

Dominic




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

Reply via email to