python3.6 :NameError: name ‘unicode’ is not defined

  • Post author:
  • Post category:python


python版本3.6

下载了BSTestRunner放在python的lib目录下,做以下修改:


运行后生成测试报告,虽然测试用例全部通过,但是测试报告中显示如下:


在BSTestRunner中找到报错的地方进行了修改:


运行结果:


分析:

python2unicode对象代表字符串,但是python3中没有unicode对象,而且传入的参数s是字节类型,这正是python3中所需要的,所以直接返回s。

为什么确定这是python3所需要的呢,因为我曾修改为:s.encode()
然后提示:

所以我认为生成测试报告需要返回的类型是字节类型。而且使用s.时只有decode()方法,这是字节转化成字符串的方法,所以判断出s是字节。直接返回就可以了



版权声明:本文为qq_41948206原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。