您的位置:首页技术文章
文章详情页

dict - Python中dic写入txt报错:a bytes-like object is required, not ’str’

【字号: 日期:2022-06-27 08:07:34浏览:33作者:猪猪

问题描述

dic = {2:’bob’,3:’alice’} output = open(’/Users/Air/itchat/push.txt’,’wb’) for i in dic: print (i,dic[i]) write_str = str(i) + ’ ’ + str(dic[i]) + ’n’ print(type(write_str)) output.write(write_str)output.close()

PyCharm运行报错如下:

2 bob<class ’str’>

Traceback (most recent call last):File '/Users/Air/itchat/test.py', line 8, in <module>

output.write(write_str)

TypeError: a bytes-like object is required, not ’str’

Process finished with exit code 1

问题解答

回答1:

打开方式改成w,不要用wb。b代表二进制

回答2:

用wb打开,需要encode

`dic = {2:’bob’,3:’alice’}output = open(’/Users/Air/itchat/push.txt’,’wb’)for i in dic:

print (i,dic[i])write_str = str(i) + ’ ’ + str(dic[i]) + ’n’print(type(write_str))output.write(write_str.encode())

output.close()`

标签: Python 编程