Using String for new List name

Hendrik van Rooyen hendrik at microcorp.co.za
Tue Sep 29 15:48:03 CEST 2009


On Monday, 28 September 2009 18:54:09 Scott wrote:
> I am new to Python but I have studied hard and written a fairly big
> (to me) script/program. I have solved all of my problems by Googling
> but this one has got me stumped.
>
> I want to check a string for a substring and if it exists I want to
> create a new, empty list using that substring as the name of the list.
> For example:
>
> Let's say file1 has line1 through line100 as the first word in each
> line.
>
> for X in open("file1"):
>     Do a test.
>     If true:
>         Y = re.split(" ", X)
>         Z = Y[0]          # This is a string, maybe it is "Line42"
>         Z = []              # This doesn't work, I want a new, empty
> list created called Line42 not Z.
>
> Is there any way to do this?

Yes

Look at exec and eval

But also look at using the string as a key in a dict.

- Hendrik





More information about the Python-list mailing list