Python多线程实现同时执行两个while循环

如果想同时执行两个while True循环,可以使用多线程threading来实现。

完整代码

#coding=gbk
from time import sleep, ctime
import threading

def muisc(func):
    while True:
        print 'Start playing: %s! %s' %(func,ctime())
        sleep(2)
 
def move(func):
    while True:
        print 'Start playing: %s! %s' %(func,ctime())
        sleep(5)

def player(name):
    r = name.split('.')[1]
    if r == 'mp3':
        muisc(name)
    else:
        if r == 'mp4':
            move(name)
        else:
            print 'error: The format is not recognized!'

list = ['爱情买卖.mp3','阿凡达.mp4']

threads = []
files = range(len(list))

#创建线程
for i in files:
    t = threading.Thread(target=player,args=(list[i],))
    threads.append(t)

if __name__ == '__main__':
    #启动线程
    for i in files:
        threads[i].start()
    for i in files:
        threads[i].join()

#主线程
    print 'end:%s' %ctime()

效果:

Python多线程实现同时执行两个while循环

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/96fc92a2f0ab7c161462fe96c12238b3.html