On Tue, Nov 10, 2015 at 12:40 AM, Cecil Westerhof <ce...@decebal.nl> wrote: > I was thinking about something like: > values = (( 1, 100), ( 2, 100), ( 5, 100), > 10, 100), (20, 100), (40, 100)) > for value in values: > do_stress_test('sqlite', ???) > do_stress_test('postgres', ???) > > Is this possible? If so: what do I put at the place of the '???'? > > I could change the second and third parameter to a tuple as the second > parameter, but I prefer three parameters if that would be possible.
Easy! Just unpack the tuple. Two options: # Unpack in the loop for count, size in values: do_stress_test('sqlite', count, size) do_stress_test('postgres', count, size) # Unpack in the function call for value in values: do_stress_test('sqlite', *value) do_stress_test('postgres', *value) Either will work. For what you're doing here, I'd be inclined to the first option, so you can give the values appropriate names (I'm completely guessing here that they might be some sort of iteration count and pool size; use names that make sense to your program); the other option looks uglier in this particular instance, though it's a more direct answer to your question. This is one of Python's best-kept secrets, I think. It's not easy to stumble on it, but it's so handy once you know about it. ChrisA -- https://mail.python.org/mailman/listinfo/python-list