2

I have a simple function with the following

comdList = range(0,27)
for t, in comdList:
    print t

However it returns a in object not iterable error

outside the function it works fine. Whats going on??

1 Answer 1

6

Try this:

for t in comdList:
    print t

The extra comma after the t variable was causing the error, because of it Python thinks that the iterable is going to return a sequence of 1-tuples to unpack - for example: ((1,), (2,)) but instead it received an iterable of single elements.

Sign up to request clarification or add additional context in comments.

3 Comments

@ Óscar López - oh the comma... duh it it always the most obvious things that you miss thanks
@Darran you're welcome! please don't forget to accept this or any other answer that you find helpful, just click on the check mark to its left ;)
Actually, for t, in comdList would only work if comdList was a sequence of 1-tuples ( (1,), (2,), ... ), not a sequence of higher-dimension tuples.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.