Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么要在分配给局部变量之前立即给它一个初始值?_Python - Fatal编程技术网

Python 为什么要在分配给局部变量之前立即给它一个初始值?

Python 为什么要在分配给局部变量之前立即给它一个初始值?,python,Python,在查看该方法的源代码时,我偶然发现了该方法。我将在这里不加上下文地将其包括在内,因为它似乎非常独立: def initiate_send(self): num_sent = 0 num_sent = dispatcher.send(self, self.out_buffer[:512]) self.out_buffer = self.out_buffer[num_sent:] 我的问题:为什么num\u sent首先设置为0,然后立即再次设置为另一个值 如果我在pyth

在查看该方法的源代码时,我偶然发现了该方法。我将在这里不加上下文地将其包括在内,因为它似乎非常独立:

def initiate_send(self):
    num_sent = 0
    num_sent = dispatcher.send(self, self.out_buffer[:512])
    self.out_buffer = self.out_buffer[num_sent:]
我的问题:为什么
num\u sent
首先设置为
0
,然后立即再次设置为另一个值


如果我在python源代码之外的任何地方都发现了这一点,我会说这一行代码是多余的。这有什么意义吗?或者说是吗?

那是死代码;它是一个局部变量,所以它永远不会影响其他任何东西

如果它是一个实例变量,那么
dispatcher.send
可以在执行时读取该值,但在这里它是完全多余的


asyncore
模块相对来说比较古老,自1999年第一次出现以来,该生产线就一直存在。

并且,除了2000年的重新起下钻外,自那时起,它一直保持不变。感谢您的清理。我担心我错过了一些关于python工作原理的基本知识