Re: [Zope] [python] creating variable names by adding 2 strings?
Lee writes: I'm creating variables in python but I am having trouble creating them when they're *named* using other variables. Here's an example; while (p!=0): p+`p`= string.replace(component[control], ",", "") # e.g. I want 'p1 = string.replace.blah...' p=p-1 control=control+1 == SyntaxError: can't assign to operator :( Why do you want to do that? It is really strange, that you want computed variable names in local namespaces. If you want them in an object, class or module, you could use "setattr". If it should go into the current module, you could use "globals()[name_expr]=value" (though the Python spec says, this may change in future implementations). Note, that security restrictions may prevent you from using "setattr" in Python scripts. Dieter ___ Zope maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )
[Zope] [python] creating variable names by adding 2 strings?
Hi there, I'm creating variables in python but I am having trouble creating them when they're *named* using other variables. Here's an example; while (p!=0): p+`p`= string.replace(component[control], ",", "") # e.g. I want 'p1 = string.replace.blah...' p=p-1 control=control+1 == SyntaxError: can't assign to operator :( I've tried various things but I cannot find a solution. I've got a nasty feeling that it's not possible... If someone could confirm this or hopefully, tell me how to do it I would be_extremely_grateful. Thanks, Lee (crossing his fingers) ___ Zope maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )
Re: [Zope] [python] creating variable names by adding 2 strings?
Hi Lee, You could use a dictionary for this: vars = {} while (p!=0): vars['p'+`p`] = string.replace(component[control], ",", "") p=p-1 control=control+1 then 'vars' will contain keys (e.g., 'p1', 'p2' etc.. ) and corresponding values. If that's totally not what you want.. a little more context would help. ;-) -steve -- Hi there, I'm creating variables in python but I am having trouble creating them when they're *named* using other variables. Here's an example; while (p!=0): p+`p`= string.replace(component[control], ",", "") # e.g. I want 'p1 = string.replace.blah...' p=p-1 control=control+1 == SyntaxError: can't assign to operator :( I've tried various things but I cannot find a solution. I've got a nasty feeling that it's not possible... If someone could confirm this or hopefully, tell me how to do it I would be_extremely_grateful. Thanks, Lee (crossing his fingers) ___ Zope maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev ) ___ Zope maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )