python把文件写入另一个文件夹 python往文件写内容 | 您所在的位置:网站首页 › python把一个文件的内容写入另一个文件 › python把文件写入另一个文件夹 python往文件写内容 |
1.open()函数底层是指针实现的 并且只是一个指针 这个指针指向文章最开头(或者说就是光标位置) 这就意味着使用read()打开文件 无论多大 速度是没有区别的 2.open(‘file’,mode)里面的mode 只读方式有两种 1是r 这种应该在后面注明编码格式 如encode=‘UTF-80’ 2是rb方式 rb方式就是二进制方式 也就是打开非文字文件时 也就是说 打开图片 打开视频文件等等 并且在网络传输中我们也不太能用UTF-8是不是?当然都是二进制了 3.然后介绍一些w 写功能 这个功能还是挺强大的 只要给一个文件名就在当前路径下创建一个文件并写入 但是如果是已存在的文件 会被覆盖如果以文本方式写入的文件, 无需制定编码. 而以二进制文本写入时, 由于写入的内容要求为bytes,所以通过str.encode('charset')来返回bytes 那我想要增加内容怎么办呢 那就只有用a了 也就是mode=‘a’会在光标处(也就是文末)添加 相当于list的append 4.那我要是想一边读一边写呢 ?那就是r+ /r+b(以bytes类型)理解成read+一个功能 但是我在后面是默认是写 此处应该注意光标的位置 为什么这么说呢? For example:f = open('log',mode='r+',encoding='utf-8') print(f.read()) f.write("1234") f.close()当我们不进行写操作 进行读操作时 光标 是从文末一直会移动到文尾的 那么也就是说 我先读后写 和先写后读 是有区别的 先写再读 会替换文章开头的数据 而先读再写 就是append的样子了 r+可读可写 所以就算不写入 也可以作为读 所以基本上大部分情况下 就是r+ 5.难道我们的光标只能在文章开头或者结尾嘛?当然不是 然后接下来就是调制光标了嘛 seek()函数直接可以确定位置 6.突然忘记有w+这个了 因为不太常用嘛 那w+有啥用咧 你写完能看一眼 就这样 不过w就是重新写一遍啊 那你看这一眼有啥用嘛 什么?你就是想看? 那你用seek(0)把光标调制到最前面 才能看到 补充一下 seek函数里面的数字是字节数!不是字符! 但是read(3)就是读取三个字符!!! 为什么?因为光标写完以后到最后了呀! 请看第一条! 所以说灵活的运用光标位置 才是掌握Python文件读写的精髓哟! 加油少年
更新一个 重要的知识点 也就是 f.tell() 就是告诉你当前光标位置 有什么用呢 ?断点续传呀 传输文件的时候 没有一次性传输完成的呀 所以这个是必要的 下次再下载的时候就知道 已经下载到了什么位置了。
|
CopyRight 2018-2019 实验室设备网 版权所有 |