基于今天学的队列写的传土豆游戏

from multiprocessing import Queue

name_list = ['kevin', 'bob', 'jerry', 'rose', 'mike', 'tom']


def pass_potato(name_list, num):
    sum_queue = Queue()
    for name in name_list:
        sum_queue.put(name)

    for i in range(num):
        sum_queue.put(sum_queue.get()) #将开头的值取出然后放入末尾,组成一个圈

    return sum_queue.get() # 将开头的人输出,就是到了数后还拿着土豆的人


print(pass_potato(name_list, 8))

为何写这个:听课时想到能否将队列围成一个圈进行反复的取值,在某些时候可以优于列表的取值,虽然列表也能够实现但相对来说更麻烦

可以基于这个代码逻辑扩大增加细化更多的功能用法

你可能感兴趣的:(python)