python 文件的基本操作 菜中菜功能的实例代码

yipeiwu_com7年前Python基础

python  文件的基本操作 菜中菜

文件操作

​ open():打开

​ file:文件的位置(路径)

​ mode:操作文件模式

​ encoding:文件编码方式

​ f :文件句柄
f = open("1.txt",mode = 'r',encoding = 'utf-8')
print(f.read())
f.close

1.文件操作模式:

​ r,w,a(重要)

​ rb,wb,ab(次要)

​ r+,w+,a+

1.1 r/w/a

1. r操作:

f = open('1.txt','r')
print(f.read()) #全部读取
print(f.read(5))#按照字符进行读取,前5个
print(f.readline())#读取一行内容,自动换行
print(f.readline().strip())#拖\n
print(f.readlines())#一行一行读,存为列表

#解决大文件:
for i in f:
  print(i)#本质就是一行一行进行读取

2. w操作:

1.先清空文件
2.写入文件
f = open('1.txt','w',encoding='utf-8')
f.write('13030308\n')
f.write('456456\n')
f.close()

3. a操作:追加操作

#在源文件的基础上进行添加
f = open('1.txt','a',encoding='utf-8')
f.write('13030308\n')
f.write('456456\n')
f.close()

1.2. b操作:rb/wb/ab

#rb:
f1 = open('1.jpg','rb')
print(f1.read())
print(f1.read(3))#按照字节读取,读取前3个字节
#wb:
f = open('3.jpg','wb')
f.write(f1.read())
#ab:
f = open('2.jpg','ab')
f.write('你好啊',encode = 'utf-8')

1.3 +操作

1. r+:读写。应该先读后写
#错误示范
f = open('1.txt','r+','utf-8')
#f = write('cx你太美')
#print(f.read())
#正确
print(f.read())
f = write('cx你太美')

2. w+ :清空写读

#读不到内容
f = open('1.txt','r+','utf-8')
f = write('cx你太美')#光标问题
print(f.read())

3. a+:追加写读

#读不到内容
f = open('1.txt','r+','utf-8')
f = write('cx你太美')#光标问题
print(f.read())

2.菜中菜:

1.f.tell(): 返回的是字节数

2.f.seek(): 移动光标,
1.seek(0,0) --> 移动到文件头部
2.seek(0,1) --> 当前位置
3.seek(0,2) --> 移动到文件末尾
4.seek(3) --> 按字节移动(按照不同编码集进行计算)

print(f.tell())#显示光标位置,返回的是字节数
f.seek(0)#移动光标

3.文件修改:

f =open('1.txt','r','utf-8')
#for i in f:
s = f.read()
s1 = s.replace('12','45')
f.close()
f1 =open('1.txt','w','utf-8')
f1.write(s1)
f1.close() 

4.with open()#自动打开关闭文件

with open('1.txt','r','utf-8') as f,\
open('1.1.txt','w','utf-8') as f1:
  for i in f:
    s1 =i.replace('12','45')
    f1.write(s1)
import os 
os.rename('1.txt','1.bak')
os.rename('1.1.txt','1.txt')

3.相对路径:

1.绝对路径方式打开文件

路径转义:

1."\"

2.r"C:\user\net"

f = open("E:\\python\\oldboy\\py\\190715",'r','utf-8')
#路径转义:1.'\\'
#2.r。-->repr():数据的原形态
#s = "[1,2,'3',4]"
#print(s)
#print(repr(s))#--显示数据原形态
f = open(r"E:\python\oldboy\py\190715",'r','utf-8')
print(f.read())
f.close()
1.相对路径
f = open("../190713/1.txt",'r','utf-8')
print(f.read())
f.close()
#推荐使用相对路径

总结

以上所述是小编给大家介绍的python  文件的基本操作 菜中菜功能的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

python提取具有某种特定字符串的行数据方法

python提取具有某种特定字符串的行数据方法

今天又帮女朋友处理了一下,她的实验数据,因为python是一年前经常用,最近找工作,用的是c,c++,python的有些东西忘记了,然后就一直催我,说我弄的慢,弄的慢,你自己弄啊,烦不烦...

Python编程实现生成特定范围内不重复多个随机数的2种方法

Python编程实现生成特定范围内不重复多个随机数的2种方法

本文实例讲述了Python编程实现生成特定范围内不重复多个随机数的2种方法。分享给大家供大家参考,具体如下: 在近期进行的一个实验中,需要将数据按一定比例随机分割为两个部分。这一问题的核...

Python 'takes exactly 1 argument (2 given)' Python error

Python初学,定义urlConfig 接收参数,正常传递参数时,出现,多给了一个参数的错误问题, 定义class的函数之后,在调用的时候出现“'takes exactly 1 arg...

解决Django加载静态资源失败的问题

解决Django加载静态资源失败的问题

Django项目中为什么会加载静态时会失败呢? 原因:django部署方式比较特别,采用静态文件路径:STATICFILES_DIRS的部署方式,之前你写的相对路径,绝对路径因为缺少静态...

详解numpy.meshgrid()方法使用

详解numpy.meshgrid()方法使用

一句话解释numpy.meshgrid()——生成网格点坐标矩阵。 关键词:网格点,坐标矩阵 网格点是什么?坐标矩阵又是什么鬼? 看个图就明白了: 图中,每个交叉点都是网格点,描...