Python有四个函数每个函数都有一个参数通过多线程同时调用并将每个返回结果写入一个列表,写个案例
下面是一个简单的 Python 多线程案例,其中有四个函数 each_square,each_cube,each_factorial 和 each_fibonacci,每个函数都接受一个整数参数并返回对该整数进行操作后的结果。这些函数将在不同的线程中同时调用,并将每个返回结果写入一个列表。最后,我们将打印出这个列表来查看每个函数的返回结果。
import threading
def each_square(x):
return x * x
def each_cube(x):
return x * x * x
def each_factorial(x):
if x == 0:
return 1
else:
return x * each_factorial(x-1)
def each_fibonacci(x):
if x <= 1:
return x
else:
return each_fibonacci(x-1) + each_fibonacci(x-2)
def main():
nums = [2, 3, 4, 5]
results = []
for num in nums:
t = threading.Thread(target=results.append, args=[each_square(num)])
t.start()
t = threading.Thread(target=results.append, args=[each_cube(num)])
t.start()
t = threading.Thread(target=results.append, args=[each_factorial(num)])
t.start()
t = threading.Thread(target=results.append, args=[each_fibonacci(num)])
t.start()
for t in threading.enumerate():
if t != threading.current_thread():
t.join()
print(results)
if __name__ == '__main__':
main()
在这个案例中,我们使用 threading.Thread() 函数创建线程,每个线程都对每个数字执行四个函数中的一个,并将返回结果添加到一个结果列表中。我们使用 threading.enumerate() 函数来遍历所有线程,并等待它们完成,然后打印结果列表。
这是一个简单的 Python 多线程案例,它演示了如何同时调用多个函数,并将它们的结果写入一个列表。
原文地址: https://www.cveoy.top/t/topic/uzY 著作权归作者所有。请勿转载和采集!