Question: i'm trying to schedule a task every 5 seconds, here what i did:

```
import schedule
import time
import tweepy 
from threading import Timer

def job():
  iGen = (i for i in range(1, 6))
  for i in iGen:

    i += 1
    mymessage = "My message here " + str(i)

    print(mymessage)

schedule.every(5).seconds.do(job)

while 1:                                
   schedule.run_pending()
   time.sleep(1)

```

but the result is:

```
My message here 2 ..after 5 secs
My message here 3
My message here 4
My message here 5
My message here 6
My message here 2 ..after 5 secs
My message here 3
My message here 4
My message here 5
My message here 6
My message here 2 ..after 5 secs
My message here 3
My message here 4
My message here 5
My message here 6

```

what i need is:

```
My message here 2 ..after 5 secs
My message here 3 ..after 5 secs 
My message here 4 ..after 5 secs
My message here 5 ..after 5 secs
My message here 6 ..after 5 secs

```

sorry for the newbie question, Thank you

Answer: 
I had the same import error problem, providing another possible solution here:

I have zope.interface 4.4.2 installed, it turned out that my twisted version is too old. By upgrade twisted solved my problem.
`pip install --upgrade twisted`
Thanks Glyph,

Finally I find following simple command could directly fix this problem, because Kivy use his own virtualenv environment, but I do appreciated your kindly help.

*kivy -m pip install twisted*

Best Wish to you,