需求:有100个数据,启动5个线程,每个线程分20个数据,怎么把这20个数据分别传给每个线程。

1. 利用多线程实现

import threading
nums = list(range(100))
def p(nums):
for num in numss:
print(num)
threads = []
for i in range(5):
# nums[0:20] #每次取的值
# nums[20:40]
# nums[40:60]
# nums[60:80]
# nums[80:]
t = threading.Thread(target=p,args=(numss[i*20:(i+1)*20],))
t.start()

2. 利用线程池实现

import threadpool
def p(num):
print(num)
res = list(range(100))
pool = threadpool.ThreadPool(20)#20个线程
reqs = threadpool.makeRequests(p,res)#生成线程要执行的所有线程,第一个参数为函数名,第二个参数是传的值
[pool.putRequest(req) for req in reqs] #列表生成式
pool.wait()#等待 其他线程执行结束

python 多线程小练习的更多相关文章

  1. python 多线程小方法

    import time from multiprocessing import Process, Lock, JoinableQueue from multiprocessing import Sem ...

  2. Python 多线程教程:并发与并行

    转载于: https://my.oschina.net/leejun2005/blog/398826 在批评Python的讨论中,常常说起Python多线程是多么的难用.还有人对 global int ...

  3. 一个python爬虫小程序

    起因 深夜忽然想下载一点电子书来扩充一下kindle,就想起来python学得太浅,什么“装饰器”啊.“多线程”啊都没有学到. 想到廖雪峰大神的python教程很经典.很著名.就想找找有木有pdf版的 ...

  4. python多线程ssh爆破

    python多线程ssh爆破 Python 0x01.About 爆弱口令时候写的一个python小脚本,主要功能是实现使用字典多线程爆破ssh,支持ip表导入,字典数据导入. 主要使用到的是pyth ...

  5. 【跟我一起学Python吧】Python 多线程

    其实自我感觉Python的多线程很类似于Java的多线程机制,但是比JAVA的多线程更灵活.在早期的Python多线程实现中,采用了thread模块.例如: from time import ctim ...

  6. 搞定python多线程和多进程

    1 概念梳理: 1.1 线程 1.1.1 什么是线程 线程是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发 ...

  7. 进程,线程,GIL,Python多线程,生产者消费者模型都是什么鬼

    1. 操作系统基本知识,进程,线程 CPU是计算机的核心,承担了所有的计算任务: 操作系统是计算机的管理者,它负责任务的调度.资源的分配和管理,统领整个计算机硬件:那么操作系统是如何进行任务调度的呢? ...

  8. python多线程、多进程以及GIL

    多线程 使用threading模块创建线程 传入一个函数 这种方式是最基本的,即调用threading中的Thread类的构造函数,然后指定参数target=func,再使用返回的Thread的实例调 ...

  9. 浅析Python多线程

    学习Python多线程的资料很多,吐槽Python多线程的博客也不少.本文主要介绍Python多线程实际应用,且假设读者已经了解多线程的基本概念.如果读者对进程线程概念不甚了解,可参见知名博主 阮一峰 ...

随机推荐

  1. python基础知识-GUI编程-TK-StringVar

    1.如何引出StringVar 之前一直认为StringVar就是类似于Java的String类型的对象变量,今天在想要设置StringVar变量的值的时候,通过搜索发现StringVar并不是pyt ...

  2. linux的shell后门尝试以及Cython转成C代码编译

    零.背景 最近研究了一下之前的反弹shell的python代码块,写了一点代码尝试在LInux下绑定和反弹shell(正反向),看了一些代码,基本是两种思路.1.本地shell的输入输出通过管道与so ...

  3. jmeter聚合报告导出时乱码的解决

    在使用jmeter性能测试时,聚合报告导出后使用excel打开时是乱码,查看相关文件后是编码的问题,解决方法如下: 1.现象: 用excel打开变成这种乱码无法看清 2.解决: 先使用记事本打开后,选 ...

  4. Java虚拟机九 java.lang.String在虚拟机中的实现

    在Java中,Java的设计者对String对象进行了大量的优化,主要有三个特点: 1.不变性: 不变性是指String对象一旦生成,则不能再对它进行改变.String的这个特点可以泛化成不变(imm ...

  5. vue--拖动排序

    https://blog.csdn.net/jx950915/article/details/79803485?from=singlemessage

  6. 任何时候心中都要有WBS的模版树---产品模块级项目

  7. Python的全局和局部变量

    global1 = " def o(): #global global1; global1=2; print(global1) def p(): print(global1) if __na ...

  8. Python装饰函数

    from time import ctime, sleep def tsfunc(func): def wrappedFunc(): print('[%s] %s() classed' % (ctim ...

  9. HDU 5512 - Pagodas - [gcd解决博弈]

    题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=5512 Time Limit: 2000/1000 MS (Java/Others) Mem ...

  10. Python 文件内容读取

    # 读取数据的函数 def readData(filename): with open(filename, 'r') as f: data = f.read().lower() data = list ...