共计 1272 个字符,预计需要花费 4 分钟才能阅读完成。
#edcoding : utf-8
#文件打开
'''
file_handler = open(文件路径,mode = 打开方式读写等以及文件类型)
r 读 默认文件的指针将会放在文件的开头, + 打开文件 读写 不能单独使用, t 文本, b 二进制,
w 写 只写情况会清空源文件内容,文件不存在会自动创建 ,
x 创建文件并写权限 文件如果已存在报错
a 文件存在就 在文件后面追加,不存在新建文件
'''file_handler = open('/Users/macbookair/python/study/test.py','r+')
read_size = 5
############ 读文件
#只读情况下,文件不存在,会报错
# str1 = file_handler.read()
# print(str1)
#不关闭 str1,文件进程会一直没占用,其他进程,比如 str2 无法读写
#str2 = file_handler.read()
#print(str2)
#指定读取字符
#按照 5 个字符循环打印文件全部内容 文本是判断 == ''二进制是判断 == b''
# while True:
# str3 = file_handler.read(read_szie)
# if str3 == '':
# break
# print(str3)
#readline 和 readlines 按照行读 二进制尽量不用
# while True:
# str4 = file_handler.readline()
# if str4 == '':
# break
# print(str4)
#读出全部内容,按照行 放入 list 中
# str4 = file_handler.readlines()
# print(str4)
#类似于使用 splitlines 按照换行分割
# str5 = file_handler.read()
# print(str5.splitlines())
#handler 可迭代,文本,使用 for 循环读
# for line in file_handler:
# print(line)
######## 写文件
# 如果文件不存在,会自动创建
# w 只写的情况下,会清空源文件内容
print(file_handler.write('bbb'))
#列表方式写
print(file_handler.writelines(['yy','11','222']))
### 获取当前指针位置
print(file_handler.tell())
### 移动指针位置, 参数:offset -- 开始的偏移量,也就是代表需要移动偏移的字节数,如果是负数表示从倒数第几位开始。#whence:可选,默认值为 0。给 offset 定义一个参数,表示要从哪个位置开始偏移;0 代表从文件开头开始算起,1 代表从当前位置开始算起,2 代表从文件末尾算起。#seek(2,0) 从开头移两位 第 2 位 seek(-3,2) 倒数第 3 位
print(file_handler.seek(2,0))
# 移动到文件的第六个字节
print(file_handler.seek(5) )
#保存文件,在打开的时候会自动保存一次
file_handler.flush()
#关闭文件
file_handler.close()
正文完