I have a number of variables that I want to modify (a bunch of strings that I need to convert into ints). Is there an easy way to do that other than saying:
> a = int(a) > b = int(b) > c = int(c)
I tried
> [i = int(i) for i in [a, b, c]]
but that didn't work because it was creating a list with the values of a, b and c instead of the actual variables themselves, then trying to set a string equal to an integer, which it really didn't like.
Actually, that didn't work because it's a SyntaxError to have an assigment statement inside a list comprehension:
py> [i = int(i) for i in [a, b, c]] Traceback ( File "<interactive input>", line 1 [i = int(i) for i in [a, b, c]] ^ SyntaxError: invalid syntax
You could try something like:
py> a, b, c ('1', '2', '3') py> a, b, c = [int(i) for i in (a, b, c)] py> a, b, c (1, 2, 3)
For a few variables, this is probably a reasonable solution. For more than 4 or 5 though, it's going to get unreadable. Of course for that many variables, you should probably be keeping them in a list instead of as separate names anyway...
Steve -- http://mail.python.org/mailman/listinfo/python-list