python3.6入门到高阶(全栈) 文件操作

今日主要内容
一. 文件操作 open() 文件句柄
1 open()打开一个文件, 获取的是文件句柄
f = open("胡辣汤", mode="r", encoding="utf-8")
2 read() # 读取全部 正常情况下不能用
# read(n) 读取n个字符
# content = f.read(3)
3 readline() # 读取一行
4 readlines() # 读取多行 正常情况下不能用
5 write()
# 一次读取一行
# while 1:
# line = f.readline()
# print(line)
6 for line in f: 遍历文件中的内容 一行一行的读取。 每次读取的内容交给前面的变量

路径的问题:
1. 绝对路径 (当文件路径是固定的时候)
从磁盘根目录寻找文件 windows 下用的就是c d e f盘 linux: \user\bin\xxxx
2. 相对路径
从当前程序运行的文件夹内寻找
..\表示上一层文件
二. 文件操作的相关模式Mode
r: 只读
w: 只写 , 先清空里面的内容,然后再写入. 并具有新建功能(和复制功能)
a: 只追加 , 追加写入, 具有新建,
r+:读写 先读后写 # 默认如果直接写入的话。 在开头写入。 覆盖开头的内容
坑: 不论你读取多少内容。再次写入的时候都是在末尾(需调光标)
w+:写读 # 先清空。 然后再操作 (此使用率最低)
a+:增读写 # 不论光标在何处 写入的时候都是在末尾

非文本文件
rb: #
wb: #
ab: #

r+b: #
w+b: #
a+b: #

三. 相关操作
1. seek()移动光标(重点) 注意, 移动的单位是byte
f.seek(0) 开头
f.seek(0,2) 移动到末尾
2. f.tell() 获取光标所在的位置

3. truncate() 截断文件(慎用)

四. 文件修改
with open(xxx) as 句柄, \
open(xxxxx)as xxx
不用手动关闭文件句柄

文件修改的步骤
1. 从源文件中读取数据。
2. 写入到副本文件中
3. 删除源文件
4. 把副本重命名成源文件
import os
os.remove()
os.rename()
posted @ 2018-10-26 18:55  曾经有个贵族  阅读(290)  评论(0编辑  收藏  举报