爬虫学习4

python 复制代码
from threading import Thread

#创建任务
def func(name):
    for i in range(100):
        print(name,i)

if __name__ == '__main__':
    #创建线程
    t1 = Thread(target=func,args=("1"))
    t2 = Thread(target=func, args=("2"))

    t1.start()
    t2.start()

    print("我是诛仙剑")
python 复制代码
from threading import Thread

class MyThread(Thread):
    def __init__(self,name):
        super(MyThread,self).__init__()
        self.name = name

    def run(self):
        for i in range(100):
            print(self.name,i)

if __name__ == '__main__':
    t1 = MyThread("123")
    t2 = MyThread("456")

    t1.start()
    t2.start()

`def init(self, name):` 这行代码定义了`MyThread`类的构造函数(也称为初始化方法)。在Python中,`init`是一个特殊的方法,当一个对象被创建时,这个方法会被自动调用。它的作用类似于其他编程语言中的构造器(constructor)。

下面是这行代码的详细解释:

  • `def`:这是定义函数的关键字。

  • `init`:这是方法的名称,`init`是Python中用于对象初始化的特殊方法名。

  • `self`:这是对当前对象实例的引用。在类的任何方法中,`self`都是一个指向类实例本身的参数,它允许我们访问类的属性和方法。

  • `name`:这是构造函数接受的参数,用于传递线程的名称。在创建`MyThread`类的实例时,你需要提供一个`name`参数,这个参数会被传递给`init`方法,并赋值给实例变量`self.name`。

在`init`方法内部,你可以执行任何初始化操作,比如设置对象的属性或者调用父类的构造函数。在你的代码中,`init`方法做了两件事:

  1. 调用父类`Thread`的构造函数:`super(MyThread, self).init()`。这确保了`Thread`类被正确初始化,因为`MyThread`继承自`Thread`。

  2. 设置线程名称:`self.name = name`。这将传入的`name`参数赋值给实例变量`self.name`,使得每个线程实例都有一个唯一的名称。

通过定义`init`方法,你可以在创建`MyThread`类的实例时,提供必要的初始化参数,并确保对象在被使用之前被正确设置。

复制代码
if __name__ == '__main__':

这是一个特殊的Python语法,用于判断当前脚本是否作为主程序运行。如果是,那么下面的代码块将被执行。这可以防止当脚本被导入到其他模块时,这部分代码被执行。

super(MyThread, self).__init__() 这行代码在Python中用于调用父类(超类)的方法。在这个特定的上下文中,它被用来调用MyThread类的父类Thread的构造方法

相关推荐
wrj的博客3 小时前
python环境安装
python·学习·环境配置
优雅的潮叭4 小时前
c++ 学习笔记之 chrono库
c++·笔记·学习
星火开发设计4 小时前
C++ 数组:一维数组的定义、遍历与常见操作
java·开发语言·数据结构·c++·学习·数组·知识
不叫猫先生4 小时前
SERP企业级AI高效爬虫,告别延迟,大规模抓取高效落地
爬虫
月挽清风4 小时前
代码随想录第七天:
数据结构·c++·算法
星幻元宇VR4 小时前
走进公共安全教育展厅|了解安全防范知识
学习·安全·虚拟现实
知识分享小能手4 小时前
Oracle 19c入门学习教程,从入门到精通, Oracle 表空间与数据文件管理详解(9)
数据库·学习·oracle
点云SLAM5 小时前
C++内存泄漏检测之Windows 专用工具(CRT Debug、Dr.Memory)和Linux 专业工具(ASan 、heaptrack)
linux·c++·windows·asan·dr.memory·c++内存泄漏检测·c++内存管理
浅念-6 小时前
C语言小知识——指针(3)
c语言·开发语言·c++·经验分享·笔记·学习·算法
hkNaruto6 小时前
【AI】AI学习笔记:LangGraph 与 LangChain的关系以及系统性学习路线选择
笔记·学习·langchain