在python2环境中运行python3代码问题及解决

本文讨论了在Python2环境下运行Python3代码时遇到的问题,如numpy的@运算符、除法运算符、函数参数类型指定、nonlocal关键字、torch.jit.script装饰器、pathlib库、time.perf_counter()函数以及cv2.findContours函数的调用。针对这些问题,提供了相应的解决办法,包括使用np.matmul替代@,修改代码以适应Python2的语法,安装pathlib库,以及考虑使用替代方法或调整代码结构来确保兼容性。
摘要由CSDN通过智能技术生成

Q:py3中numpy的@运算符在py2中无法识别
A:用np.matmul函数替代@运算符

Q:除法运算符变化
A:在代码文件头两行增加以下代码

# -- coding: utf-8 --
from __future__ import division

Q:py3中函数传参可以指定类型,而py2无法识别
A:删除对类型的指定

Q:py3闭包中关键字nonlocal,py2无法识别
A:改用函数套函数的写法,用字典代替nonloacl变量,具体教程

Q:py3中使用@torch.jit.script装饰器,py2中无法使用
A:@torch.jit.script装饰器用于模型加速,直接删除不影响代码效果,或者在执行代码前增加注释PYTORCH_JIT=0关闭装饰器

Q:py3函数传参args和**kwargs,在py2中无法识别
A:py2可以识别
args和**kwargs,但必须放在最后两个位置

Q:py2中不支持pathlib
A:单独安装

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值