我肯定在这里做错了什么。但是,这是什么,我该如何解决?
Python 2.6.5 (r265:79096, Mar 19 2010, 21:48:26) [MSC v.1500 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import io
>>> f1 = io.open('test.txt','w')
>>> f1.write('bingo')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\appl\python\2.6.5\lib\io.py", line 1500, in write
s.__class__.__name__)
TypeError: can't write str to text stream
编辑:在我的实际应用程序中,我将没有常量字符串,我将有常规字符串...如果unicode是问题,我如何转换为io.open所需?
参考方案
io
模块是一个相当新的python模块(在Python 2.6中引入),使处理unicode文件更加容易。其文档位于:http://docs.python.org/library/io.html
如果您只想写字节(Python 2的“str”类型)而不是文本(Python 2的“unicode”类型),那么我建议您跳过io
模块,而只使用内置的“open”功能,给出一个处理字节的文件对象:
>>> f1 = open('test.txt','w')
或者,在模式字符串中使用“b”以二进制模式打开文件:
>>> f1 = io.open('test.txt','wb')
阅读io模块的文档以获取更多详细信息:http://docs.python.org/library/io.html
TypeError:'str'对象不支持项目分配,带有json文件的python - python以下是我的代码import json with open('johns.json', 'r') as q: l = q.read() data = json.loads(l) data['john'] = '{}' data['john']['use…
TypeError:“范围”对象不支持项目分配 - python我正在查看一些python 2.x代码,并尝试将其转换为py 3.x,但我仍停留在此部分。任何人都可以澄清出什么问题吗?import random emails = { "x": "[REDACTED]@hotmail.com", "x2": "[REDACTED]@hotmail.com…
Python TypeError:“类型”对象不支持项目分配 - python我必须设计并实现一个TwoSum类。它应该支持以下操作:add-将数字添加到内部数据结构中。find-查找是否存在任何一对数字,其总和等于该值。这是我的代码:class TwoSum(object): dict = {} def add(self,n): dict[n] = n #TypeError: 'type' object does…
Python 3运算符>>打印到文件 - python我有以下Python代码编写项目的依赖文件。它可以在Python 2.x上正常工作,但是在使用Python 3进行测试时会报告错误。depend = None if not nmake: depend = open(".depend", "a") dependmak = open(".depend.mak…
Python:对于长时间运行的进程,通过还是休眠? - python我正在编写一个队列处理应用程序,该应用程序使用线程等待和响应要发送到该应用程序的队列消息。对于应用程序的主要部分,只需要保持活动状态即可。对于像这样的代码示例:而True: 通过要么而True: time.sleep(1)哪一个对系统的影响最小?除了保持python应用运行外,什么都不做的首选方式是什么? 参考方案 我可以想象time.sleep()会减少系…