python文件的读写
在python中以只读模式打开文件的时候,会自动将文件的内容进行清空,然后在将数据写到文件中。
打开文件以后,使用write方法的时候,每调用一次write方法,都会将内容写道文件中,会紧跟着上一次文件结尾的地方。
在文件关闭和使用flush函数之后,会将对应的数据写到文件中,在此之前,全部都是保存在缓冲区中的。
打开文件记得关闭文件,这是一个好的习惯。
python中的print默认是自动换行的。
在读文件的时候,最好使用迭代器的方式,在循环文件的时候,python确实是这么做的。
f.readlines,返回的是一个列表,列表中包含了所有的行的内容。
python中使用enumerate中的必须是可迭代对象
f.tell。返回光标所在的位置,具体而言就是,对于英文字符,对应一个字符,而中文字符,对应3个字符。
f.seek,任意调整指向文件指针的位置。在上传下载FTP的时候,可能会用到。
f.flush,会强制将缓冲区的内容写到文件中。默认情况下,只有缓冲区满了,才会将缓冲区中的内容写到对应的文件中。
f.truncate,是对文件进行的一种操作,默认是从最开始的光标位置进行截断,有多少截断多少,只能对写模式的文件进行操作。
r+ ,读写,该怎么读就怎么读,写的话就在最后追加写。
w+,写读,可以读,不过都是读光标指针后面的内容,因此需要事先指定光标所在的位置。
a+,追加读写模式
用的最多的是r+模式,w+模式就是先清空文件中的内容,在重新想这个文件中写内容数据。
字典类型和字符类型之间的转换
str,可以将一个字典转换成为字符串的形式。
eval,将字符串str当成有效的表达式来求值并返回计算结果,可以将列表,字典,元组等进行转换成为真正的数据类型。
在打开文件的时候,可以使用with表达式,这样在结束的时候会自动的关闭文件句柄。推荐使用这种方式