Python3实践日记:使用文件写的时候,一直报TypeError: a bytes-like object is required, not 'str'

问题发现

  • 使用python3在做一个将html转化成json格式的工具
  • 使用语句:with open('mytest1.json','wb') as fp: json.dump(content,fp=fp,indent=4)
  • 运行后,一直报TypeError: a bytes-like object is required, not ‘str’

问题分析

  • 转了一大圈,花费了将近一个小时,才发现问题的原因不在于要写入的东西的类型,而是open(“jsonTest.txt”, “wb”)指定文件以二进制写模式打开,所以需要以二进制写入,不能写入字符串,而上面代码中str是一个列表字符串,所以报异常。

问题解决

  • 上面代码中str是列表字符串,所以将open()函数中的打开文件方式改为“w”写模式即可
  • Python3实践日记:使用文件写的时候,一直报TypeError: a bytes-like object is required, not 'str'
  • Python3实践日记:使用文件写的时候,一直报TypeError: a bytes-like object is required, not 'str'
    问题解决,拍桌!!!
    Python3实践日记:使用文件写的时候,一直报TypeError: a bytes-like object is required, not 'str'