python基础(十四)--文件操作
Posted qingmuzi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础(十四)--文件操作相关的知识,希望对你有一定的参考价值。
1,文件操作。
模特主妇护士老师.txt
1,文件路径:d:模特主妇护士老师.txt
2,编码方式:utf-8 gbk 。。。。
3,操作方式:只读,只写,追加,读写,写读.....
以什么编码方式储存的文件,就以什么编码打开进行操作。
模特主妇护士老师.txt
1,文件路径:d:模特主妇护士老师.txt
2,编码方式:utf-8 gbk 。。。。
3,操作方式:只读,只写,追加,读写,写读.....
以什么编码方式储存的文件,就以什么编码打开进行操作。
只读:r
rb
f = open(‘模特主妇护士班主任‘,mode=‘r‘,encoding=‘utf-8‘)
content = f.read()
print(content,type(content))
f.close()
# f = open(‘模特主妇护士班主任‘,mode=‘rb‘,)
# content = f.read()
# print(content)
# f.close()
# content = f.read()
# print(content)
# f.close()
r+ 读写
r+b 读写(以bytes类型)
# f = open(‘log‘,mode=‘r+‘,encoding=‘utf-8‘)
# print(f.read())
# f.write(‘大猛,小孟‘)
# f.close()
r+b 读写(以bytes类型)
# f = open(‘log‘,mode=‘r+‘,encoding=‘utf-8‘)
# print(f.read())
# f.write(‘大猛,小孟‘)
# f.close()
f = open(‘log‘,mode=‘r+b‘)
print(f.read())
f.write(‘大猛,小孟‘.encode(‘utf-8‘))
f.close()
print(f.read())
f.write(‘大猛,小孟‘.encode(‘utf-8‘))
f.close()
只写:w
wb
# 先将源文件的内容全部清除,在写。
# f = open(‘log‘,mode=‘w‘,encoding=‘utf-8‘)
# f.write(‘附近看到类似纠纷‘)
# f.close()
wb
# 先将源文件的内容全部清除,在写。
# f = open(‘log‘,mode=‘w‘,encoding=‘utf-8‘)
# f.write(‘附近看到类似纠纷‘)
# f.close()
f = open(‘log‘,mode=‘wb‘)
f.write(‘附近看到类似纠纷‘.encode(‘utf-8‘))
f.close()
w+
# f = open(‘log‘,mode=‘w+‘,encoding=‘utf-8‘)
# f.write(‘aaa‘)
# f.seek(0)
# print(f.read())
# f.close()
w+b
.......
f.write(‘附近看到类似纠纷‘.encode(‘utf-8‘))
f.close()
w+
# f = open(‘log‘,mode=‘w+‘,encoding=‘utf-8‘)
# f.write(‘aaa‘)
# f.seek(0)
# print(f.read())
# f.close()
w+b
.......
追加
# f = open(‘log‘,mode=‘a‘,encoding=‘utf-8‘)
# f.write(‘佳琪‘)
# f.close()
# f = open(‘log‘,mode=‘ab‘)
# f.write(‘佳琪‘.encode(‘utf-8‘))
# f.close()
# f.write(‘佳琪‘.encode(‘utf-8‘))
# f.close()
#绝对路径
# f = open(‘d:模特主妇护士班主任.txt‘,mode=‘r‘,encoding=‘UTF-8‘)
# content = f.read()
# print(content)
# f.close()
# f = open(‘d:模特主妇护士班主任.txt‘,mode=‘r‘,encoding=‘UTF-8‘)
# content = f.read()
# print(content)
# f.close()
#bytes ---->str
# f = open(‘模特主妇护士班主任‘,mode=‘r‘,encoding=‘utf-8‘)
# content = f.read()
# f.write(‘fjsdlk‘)
# f.close()
# f = open(‘模特主妇护士班主任‘,mode=‘r‘,encoding=‘utf-8‘)
# content = f.read()
# f.write(‘fjsdlk‘)
# f.close()
# f = open(‘模特主妇护士班主任‘,mode=‘rb‘,)
# content = f.read()
# print(content)
# f.close()
# f = open(‘log‘,mode=‘r+‘,encoding=‘utf-8‘)
# print(f.read())
# f.close()
# content = f.read()
# print(content)
# f.close()
# f = open(‘log‘,mode=‘r+‘,encoding=‘utf-8‘)
# print(f.read())
# f.close()
# f = open(‘log‘,mode=‘r+b‘)
# print(f.read())
# f.write(‘大猛,小孟‘.encode(‘utf-8‘))
# f.close()
# print(f.read())
# f.write(‘大猛,小孟‘.encode(‘utf-8‘))
# f.close()
#对于w:没有此文件就会创建文件
# f = open(‘log‘,mode=‘w‘,encoding=‘utf-8‘)
# f.write(‘骑兵步兵‘)
# f.close()
# f = open(‘log‘,mode=‘w‘,encoding=‘utf-8‘)
# f.write(‘骑兵步兵‘)
# f.close()
# 先将源文件的内容全部清除,在写。
# f = open(‘log‘,mode=‘w‘,encoding=‘utf-8‘)
# f.write(‘附近看到类似纠纷‘)
# f.close()
# f = open(‘log‘,mode=‘w‘,encoding=‘utf-8‘)
# f.write(‘附近看到类似纠纷‘)
# f.close()
# f = open(‘log‘,mode=‘w+‘,encoding=‘utf-8‘)
# f.write(‘aaa‘)
# f.seek(0)
# print(f.read())
# f.close()
# f = open(‘log‘,mode=‘wb‘)
# f.write(‘附近看到类似纠纷‘.encode(‘utf-8‘))
# f.close()
# f = open(‘log‘,mode=‘a‘,encoding=‘utf-8‘)
# f.write(‘佳琪‘)
# f.close()
#
# f = open(‘log‘,mode=‘a‘,encoding=‘utf-8‘)
# f.write(‘佳琪‘)
# f.close()
# f.write(‘佳琪‘)
# f.close()
#
# f = open(‘log‘,mode=‘a‘,encoding=‘utf-8‘)
# f.write(‘佳琪‘)
# f.close()
# f = open(‘log‘,mode=‘a+‘,encoding=‘utf-8‘)
# f.write(‘佳琪‘)
# f.seek(0)
# print(f.read())
# f.close()
# f.write(‘佳琪‘)
# f.seek(0)
# print(f.read())
# f.close()
# f = open(‘log‘,mode=‘ab‘)
# f.write(‘佳琪‘.encode(‘utf-8‘))
# f.close()
#功能详解
# obj = open(‘log‘,mode=‘r+‘,encoding=‘utf-8‘)
# content = f.read(3) # 读出来的都是字符
# f.seek(3) # 是按照字节定光标的位置
# f.tell() 告诉你光标的位置
# print(f.tell())
# content = f.read()
# print(content)
# f.tell()
# f.readable() # 是否刻度
# line = f.readline() # 一行一行的读
# line = f.readlines() # 每一行当成列表中的一个元素,添加到list中
# f.truncate(4)
# for line in f:
# print(line)
# f.close()
# content = f.read(3) # 读出来的都是字符
# f.seek(3) # 是按照字节定光标的位置
# f.tell() 告诉你光标的位置
# print(f.tell())
# content = f.read()
# print(content)
# f.tell()
# f.readable() # 是否刻度
# line = f.readline() # 一行一行的读
# line = f.readlines() # 每一行当成列表中的一个元素,添加到list中
# f.truncate(4)
# for line in f:
# print(line)
# f.close()
# f = open(‘log‘,mode=‘a+‘,encoding=‘utf-8‘)
# f.write(‘佳琪‘)
# count = f.tell()
# f.seek(count-9)
# print(f.read(2))
# f.close()
# f.write(‘佳琪‘)
# count = f.tell()
# f.seek(count-9)
# print(f.read(2))
# f.close()
# with open(‘log‘,mode=‘r+‘,encoding=‘utf-8‘) as f,
# open(‘log‘,mode=‘w+‘,encoding=‘utf-8‘) as f1:
# open(‘log‘,mode=‘w+‘,encoding=‘utf-8‘) as f1:
username = input(‘请输入你要注册的用户名:‘) password = input(‘请输入你要注册的密码:‘) with open(‘list_of_info‘,mode=‘w‘,encoding=‘utf-8‘) as f: f.write(‘{} {}‘.format(username,password)) print(‘恭喜您,注册成功‘) lis = [] i = 0 while i < 3: usn = input(‘请输入你的用户名:‘) pwd = input(‘请输入你的密码:‘) with open(‘list_of_info‘,mode=‘r+‘,encoding=‘utf-8‘) as f1: for line in f1: lis.append(line) if usn == lis[0].strip() and pwd == lis[1].strip(): print(‘登录成功‘) break else:print(‘账号和密码错误‘) i+=1
#str --->byte encode 编码
# s = ‘二哥‘
# b = s.encode(‘utf-8‘)
# print(b)
# #byte --->str decode 解码
# s1 = b.decode(‘utf-8‘)
# print(s1)
# s = ‘二哥‘
# b = s.encode(‘utf-8‘)
# print(b)
# #byte --->str decode 解码
# s1 = b.decode(‘utf-8‘)
# print(s1)
# s = ‘abf‘
# b = s.encode(‘utf-8‘)
# print(b)
# #byte --->str decode 解码
# s1 = b.decode(‘gbk‘)
# print(s1)
复习内容
# 文件处理
# 打开文件
#open(‘路径‘,‘打开方式‘,‘指定编码方式‘)
# 打开方式 r w a r+ w+ a+ b
#r+ 打开文件直接写 和读完再写
# 编码方式 —— utf-8
# 操作文件
# 读
# read 一次性读
# readlines 一次性读
# readline 一行一行读
#不知道在哪儿结束
#视频 图片 rb bytes 按照字节读
# for循环 —— 最好!!!
# 写
# write
# 光标 —— 文件指针
#seek _ 指定光标移动到某个位置
#tell _ 获取光标当前的位置
#truncate _ 截取文件
# 关闭文件
#close
# 打开文件
#open(‘路径‘,‘打开方式‘,‘指定编码方式‘)
# 打开方式 r w a r+ w+ a+ b
#r+ 打开文件直接写 和读完再写
# 编码方式 —— utf-8
# 操作文件
# 读
# read 一次性读
# readlines 一次性读
# readline 一行一行读
#不知道在哪儿结束
#视频 图片 rb bytes 按照字节读
# for循环 —— 最好!!!
# 写
# write
# 光标 —— 文件指针
#seek _ 指定光标移动到某个位置
#tell _ 获取光标当前的位置
#truncate _ 截取文件
# 关闭文件
#close
# 修改文件
with open(‘小护士班主任‘,encoding=‘utf-8‘) as f,open(‘小护士班主任.bak‘,‘w‘,encoding=‘utf-8‘) as f2:
for line in f:
if ‘星儿‘ in line: #班主任:星儿
line = line.replace(‘星儿‘,‘啊娇‘)
#写文件
f2.write(line) #小护士:金老板
with open(‘小护士班主任‘,encoding=‘utf-8‘) as f,open(‘小护士班主任.bak‘,‘w‘,encoding=‘utf-8‘) as f2:
for line in f:
if ‘星儿‘ in line: #班主任:星儿
line = line.replace(‘星儿‘,‘啊娇‘)
#写文件
f2.write(line) #小护士:金老板
import os
os.remove(‘小护士班主任‘) #删除文件
os.rename(‘小护士班主任.bak‘,‘小护士班主任‘) #重命名文件
os.remove(‘小护士班主任‘) #删除文件
os.rename(‘小护士班主任.bak‘,‘小护士班主任‘) #重命名文件
以上是关于python基础(十四)--文件操作的主要内容,如果未能解决你的问题,请参考以下文章