ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

文件操作

2022-06-26 20:03:09  阅读:110  来源: 互联网

标签:文件 f3 utf encoding read print 操作 open


#绝对路径:从磁盘根目录开始一直到文件名
#相对路径:读取同一个文件夹下的文件,./文件名 ../返回上一层

#文件的读
#1、相对路径打开
f=open('userinfo')
print(f.read())

f=open('./userinfo')
#2、绝对路径打开
#在路径前+r
#f=open(r'E:\python\show\PycharmProjects\day4\userinfo',encoding='utf-8')
# print(f.read())


#加\  取消转义后面的所有字符
# f=open('E:\python\show\PycharmProjects\day4\\userinfo')
# print(f.read())

 

#解决中文乱码问题,在后面加encoding='utf-8'
f=open('userinfo',encoding='utf-8')
# print(f.read()) #一次读取所有内容,文件有多大,都多少,占用多大内存

#f是一个文件句柄,所有和文件相关的操作都依赖f,也可以叫做文件操作符

# print(f.readline()) #一次读取一行,依次向下读,,读一行会换行,不知道哪里结束
# print(f.readline())
# print(f.readline())
# print(f.readline())

for line in f:
    line=line.strip() #去除换行
    print(line)

f.close()#关闭文件

文件的写

# #以写的方式打开一个存在的文件,相当于清空文件;
# f=open('userinfo',mode='w',encoding='utf-8')
# f.write('张三|777')
# f.close()

#以写的方式打开一个不存在的文件,相当于新建一个空文件
# f1=open('user.txt',mode='w',encoding='utf-8')
# f1.write('老王|123\n')
# f1.write('老张|456\n')
# f1.close()

文件的追加

# f2=open('user.txt',mode='a',encoding='utf-8')
# f2.write('老李|888')
# f2.close()

读取视频/图片,以字节的形式读取 rb
# f3=open('img.png',mode='rb')
# print(f3.read())     #一次性读完,不知道大小,内存容易爆

#视频/图片不能用for循环读取     没有行

#按字节的大小一点点读
# content=f3.read(1024)  #一次读1024字节
# print(content)
import os

#size=os.path.getsize(r'E:\python\show\PycharmProjects\day4\img.png')
# print(size)

# f3=open('img.png',mode='rb')
# while size>1024:
#     content=f3.read(1024)
#     print(content)
#     size-=1024
# else:
#     content=f3.read(size)
#     print(content)

复制图片
#size=os.path.getsize(r'E:\python\show\PycharmProjects\day4\img.png')
# print(size)

# f3=open('img.png',mode='rb')
# f4=open('img拷贝.png',mode='wb')
# while size>1024:
#     content=f3.read(1024)
#     f4.write(content)
#     size-=1024
# else:
#     content=f3.read(size)
#     f4.write(content)
# f3.close()
# f4.close()

 r+模式  读写,正常先读后写

# f=open('userinfo.txt',mode='r+',encoding='utf-8')
# f.write('小伙子')
# print(f.read())
# f.close()

# f3=open('userinfo',mode='r+',encoding='utf-8')
# print(f3.read())
#
# f2=open('user.txt',encoding='utf-8')
# print(f2.readline())

# #从光标位置读,第一行读不出来
# for i in f2:
#     print('-------')
#     print(i)

w+模式   写读

# f5=open('userinfo',encoding='utf-8',mode='w+')
# f5.write('果果爱吃棒棒糖')
# f5.seek(0)#移动光标到开头
# print(f5.read())
# f5.close()
文件的指针
f6=open('userinfo',encoding='utf-8')
print(f6.readline())
print(f6.tell())#查看指针的位置,\n算2个字节

#seek(n) 移动的单位是byte
#移动到开头  seek(0)
#移动到结尾 seek(0,2) seek第二个参数表示从哪个位置进行偏移,默认0,表示开头,1表示当前位置,2表示结尾

文件的修改

# f1=open('user.txt',encoding='utf-8')
# f2=open('b.txt',mode='w',encoding='utf-8')
# for line in f1:
#     username,password=line.split('|')
#     if username=='老李':
#         password='999\n'
#     f2.write('|'.join([username,password]))
# f1.close()
# f2.close()
# import os
# os.remove('user.txt')
# os.rename('b.txt','user.txt')

 

标签:文件,f3,utf,encoding,read,print,操作,open
来源: https://www.cnblogs.com/gm11/p/16414211.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有