本文共 803 字,大约阅读时间需要 2 分钟。
文件123内容
123456789
操作:
f = open('123','r')line = f.readline()print line[0] #1print line[-1] #\n 回车print line[1,-1] #23,注意从1 到-1 但是不包括line[-1],而包括开始位置line[1]
注意:
f.readline()完成后最后一个字符是 ‘\n’,此时光标已经定位到了下一行的第0个位置
但是读第三行时 print line[-1]是9而不是'\n',因为此时最后一行不存在换行符
那么这样就好解决这个问题了:想在第一行后面加'hello',这样编程就错了:
f = open('123','r+')f.readline()f.seek(-1,1) #定位到\n前f.write('hello')f.close()
结果:
123
hello 789没有在第一行写反到第二行了,这是因为原来的格局已定了,要想实现可以这样:
f = open('123','r+')g = open('1234','w')line = f.readline()line = line[:-1] + ' hello\n'g.write()g.write(f.readline())g.write(f.readline())f.close()g.close()
其中用到了几个技巧:
1. 去除最后的回车键‘\n’
line = f.readline() line = line[:-1]
2. 字符串相加:
line += ' hello'
本文转自jihite博客园博客,原文链接:http://www.cnblogs.com/kaituorensheng/archive/2012/06/05/2537347.html,如需转载请自行联系原作者