Serial port 如何加载修改后的python模块?

Serial port 如何加载修改后的python模块?,serial-port,pip,Serial Port,Pip,我在Python中使用广泛使用的模块PySerial()进行串行通信。它的一个函数是readline(),它读取一行直到行'\n'结束。我在同一个文件serialutil.py中创建了一个新函数readline_v2(),类似于readline()。但每次我使用“python install setup.py”安装模块时,似乎都没有反映出任何更改。未检测到新功能。我做错了什么 我使用的是64位Windows 8。我首先下载了pyserial的源代码,对其进行了解压缩,当我发现它不能按我希望的方式

我在Python中使用广泛使用的模块PySerial()进行串行通信。它的一个函数是readline(),它读取一行直到行'\n'结束。我在同一个文件serialutil.py中创建了一个新函数readline_v2(),类似于readline()。但每次我使用“python install setup.py”安装模块时,似乎都没有反映出任何更改。未检测到新功能。我做错了什么

我使用的是64位Windows 8。我首先下载了pyserial的源代码,对其进行了解压缩,当我发现它不能按我希望的方式工作时,对其进行了修改

我也尝试过使用pip,使用“pip安装pyserial”,但再次没有改变。我确保在重新安装之前卸载了以前的版本。卸载后,“C:/python27/lib/site packages”文件夹中不存在这些文件。在重新安装之前,我还删除了在串行包中看到的所有编译/构建文件

注意:在“C:/python27/lib/site packages”中,安装后,我可以看到具体文件serialutil.py中反映的更改。但我仍然无法调用该函数

注2:serialutil.py由以下形式的函数组成-

这是我添加函数的唯一地方,因为原始函数readline()是在其他地方定义/使用的


最后一点:我找不到修复方法。但我用了一个变通办法。在执行“导入序列”之后,我在文件中定义了新函数,而不是修改包本身。这不是理想的解决方案,但效果很好。

您需要使用sys.path.append()将新模块的位置添加到path,或者将新模块保留在项目目录中。

我修改了现有模块。我没有添加任何新内容。使用pip将下载一个新副本并安装它。不过,使用setup.py安装应该反映您的更改。有没有可能它们不是在正确的地方制造的?我不知道这个模块有多简单或复杂,当我想要修改一个模块时,我通常会做的就是将它全部从python目录中复制出来,修改它并从其他地方导入它。我不喜欢安装一个修改过的,因为我以后通常会做一些事情,然后它就不会像预期的那样工作了。pip也可以使用pip install-e path与本地副本一起使用。在任何情况下,每次我安装修改后的版本时,它都会清楚地反映在站点包中的文件中(我相信是从python导入的地方)。但是,尽管有这些变化,当我导入时,我无法使用新函数。
def readline()
def readline_v2()