首先。我在python2中的主要代码。最近,我在寻找一些功能,经过大量搜索后,我能够在python3中找到库。
因此,我已经在python3中编写了部分代码。 现在,下一个大麻烦是数据共享之间的数据共享。因此,我使用os.system()和pickle在两个程序之间共享数据。
但是,我发现这种方法非常无效。这会使程序变慢。我的程序时间紧迫。有什么有效的方法可以做得更快。
答案 0 :(得分:0)
答案 1 :(得分:0)
我知道这不是您要寻找的答案,但这是前进的解决方案:您应该将以python 2编写的“主要代码”移植到python3。end of life for python 2在2020年,是less than 2 years from now。随着时间的流逝,使用python 3只会变得更加困难,而继续使用2则会变得更加不安全。还要注意,由于第三方库,您被迫切换到3。这与通常的效果相反,因为人们懒惰地保持了依赖性,人们坚持使用2。
您在评论中提到您的python 2代码使用OpenCV 2.4。好吧,这真是个好消息!首先,OpenCV长期以来一直支持python 3!其次,您的工作听起来大多是数字的,这将使本地python部分移植到3个琐碎的事情(2to3
工具可以为您完成的工作,也许是全部)。我正在考虑向print
等添加缺少的括号。您还可以使用仅在python 3中可用的现代python模式,尤其是其较新版本。
我知道升级代码以使用较新版本的OpenCV并非易事,但是作为偶尔使用OpenCV的用户,我仍然认为这是迄今为止最简单,最易于维护的解决方案。认为这是一项投资(一项非常好的投资,没有风险,而且回报率很高)。