操作字符串,使用StringIO
#!/usr/bin/python
# -*- coding: utf-8 -*-
from io import StringIO
f = StringIO()
f.write('hello')
print(f.getvalue())
运行结果:
Traceback (most recent call last):
File "stringio.py", line 6, in <module>
f.write('hello')
TypeError: unicode argument expected, got 'str'
在python 2.7版本中出错,在python 3版本中正常运行,于是百度了一下,把
from io import StringIO
改为
from io import BytesIO as StringIO
继续在python2.7版本中运行,正常了。
#!/usr/bin/python
# -*- coding: utf-8 -*-
#from io import StringIO
#from io import BytesIO
from io import BytesIO as StringIO
f = StringIO()
f.write('hello')
print(f.getvalue())
运行结果:
hello
操作二进制文件,使用BytesIO
以下代码在python2.7运行又有问题,目前时间不够,为节省时间,在python3平台运行,成功
#!/usr/bin/python
# -*- coding: utf-8 -*-
from io import BytesIO
f = BytesIO()
f.write('中文'.encode('utf-8'))
print(f.getvalue())
运行结果:
hello
b'\xe4\xb8\xad\xe6\x96\x87'
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。