吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1806|回复: 23
收起左侧

[已解决] python如何批量定义函数来批量启动多线程?

[复制链接]
Zeaf 发表于 2020-5-6 10:10
本帖最后由 Zeaf 于 2020-5-6 10:40 编辑

想爬取网页上多页图片,并且每一页用一个线程跑
已知:页数为i(不确定)
目标:批量定义函数并启动线程

例如i=5时:
[Python] 纯文本查看 复制代码
if __name__ == '__main__':
    t1 = threading.Thread(target=get_img_1)    #第一个线程
    t2 = threading.Thread(target=get_img_2)    #第二个线程
    t3 = threading.Thread(target=get_img_3)    #第三个线程
    t4 = threading.Thread(target=get_img_4)
    t5 = threading.Thread(target=get_img_5)
    t1.start()    #启动第一个线程
    t2.start()   #以此类推
    t3.start()
    t4.start()
    t5.start()


可能我只是不会用这个线程吧....想着随机得到一个i能够自动多线程跑,每页一个线程,如何做到呢?
CSDN果然最强,原来元组要加逗号的,代码如下
[Python] 纯文本查看 复制代码
if __name__ == '__main__':    
    for x in range(1,i+1):
        threading.Thread(target=get_img, args=(x,)).start()  #def get_img(x)  

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

hhxk 发表于 2020-5-6 10:13
for可以吗
 楼主| Zeaf 发表于 2020-5-6 10:20
本帖最后由 Zeaf 于 2020-5-6 10:24 编辑

怎么弄?
[Python] 纯文本查看 复制代码
for i in range(i+1):
    def get_img_i():

我这样肯定不行...
我觉得我得去看看线程,说不定加个参数可以实现....
大概类似这样?
[Python] 纯文本查看 复制代码
for i in range(i+1):
    threading.Thread(target=get_img, args=(i)).start  #def get_img(i)  

大佬能帮我解答最好了~
从0开始的小小怪 发表于 2020-5-6 10:26
assdqwe123 发表于 2020-5-6 10:27
本帖最后由 assdqwe123 于 2020-5-6 10:34 编辑

这样
[Python] 纯文本查看 复制代码
pool = []
for i in range(5):
    pool.append(threading.Thread(target=get_img, arg=(i,)))
for thread in pool:
    thread.start()
 楼主| Zeaf 发表于 2020-5-6 10:31
assdqwe123 发表于 2020-5-6 10:27
这样[mw_shl_code=python,true]pool = []
for i in range(5):
    pool.append(threading.Thread(target= ...

那个get_img_i中的i也会变化吗?是不是加参数好些
assdqwe123 发表于 2020-5-6 10:33
Zeaf 发表于 2020-5-6 10:31
那个get_img_i中的i也会变化吗?是不是加参数好些

函数函数,搞错了
头像被屏蔽
王星星 发表于 2020-5-6 10:36
提示: 作者被禁止或删除 内容自动屏蔽
 楼主| Zeaf 发表于 2020-5-6 10:41
assdqwe123 发表于 2020-5-6 10:33
函数函数,搞错了

我解决了,就是加参数,不过必须加元组
 楼主| Zeaf 发表于 2020-5-6 10:41

我解决了,放列表麻烦了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 16:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表