python3 怎样用threading多线程处理同一数据

怎样用threading多线程处理同一数据打印?
函数a的内容是输出1-100
想用threading方法,开5条线程同时完成1-100的输出
注意:假如线程1输出的是1,其他线程就只能输出2 不能重复输出1...以此类推

import threading

lock = threading.Lock()

def a():
for i in range(1,100):
print (i,threading.currentThread())

for i in range(5):

th=threading.Thread(target=a,args=())

th.start()

q=queue.Queue

for i in range(1,101):
    q.put(i)

def pout(q):
    print(q.get())

for i in range(5):
    th = threading.Thread(target =pout ,args=(q,))
    th.start()

这里的md编辑器真难用。主体代码就是如此。