|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
求助:
我想从当前位置往前移动一个字符位置指针,或者说读取当前位置的上一个字符,如何做?
我做了些测试:
f=open('随意打开一个.txt')
f.read(1)
f.seek(f.tell()-1) #或者f.seek(#此处一个具体数值,值为f.tell()-1),然后再f.read(1)会报错误
#f.seek()
f.read(1)
错误提示:
Traceback (most recent call last):
File "<pyshell#108>", line 1, in <module>
f.read(1)
UnicodeDecodeError: 'gbk' codec can't decode byte 0xda in position 2: illegal multibyte sequence
查了些相关文档:
操作文件指针可以通过seek方法:
seek(offset, whence):移动文件指针
offset:偏移量,可为负数
whence:偏移相对位置
偏移相对位置为os模块当中的SEEK_SET、SEEK_CUR、SEEK_END:
os.SEEK_SET:表示文件的相对起始位置
os.SEEK_CUR:表示文件的相对当前位置
os.SEEK_END:表示文件的相对结束位置
执行下列代码:
f.seek(-1,os.SEEK_CUR)
错误提示:
Traceback (most recent call last):
File "<pyshell#117>", line 1, in <module>
f.seek(-1,os.SEEK_CUR)
io.UnsupportedOperation: can't do nonzero cur-relative seeks
以上均为shell下运行的,求助,谢谢!!
目的想读取当前文件指针上一个字符位置。谢谢! |
|