首页技术文章正文

python基础知识六 文件的基本操作+菜中菜【黑马python培训】

更新时间:2019年07月26日 11时10分53秒 来源:黑马程序员论坛

基础知识六 文件操作
​ open():打开
​ file:文件的位置(路径)
​ mode:操作文件模式
​ encoding:文件编码方式
​ f :文件句柄
f = open("1.txt",mode = 'r',encoding = 'utf-8')print(f.read())f.close1.文件操作模式:
​ r,w,a(重要)
​ rb,wb,ab(次要)
​ r+,w+,a+
1.1 r/w/a1. r操作:f = open('1.txt','r')print(f.read()) #全部读取print(f.read(5))#按照字符进行读取,前5个print(f.readline())#读取一行内容,自动换行print(f.readline().strip())#拖\nprint(f.readlines())#一行一行读,存为列表#解决大文件:for i in f:    print(i)#本质就是一行一行进行读取2. w操作:
  • 先清空文件
  • 写入文件
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(): 移动光标,
  • seek(0,0) --> 移动到文件头部
  • seek(0,1) --> 当前位置
  • seek(0,2) --> 移动到文件末尾
  • 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."\"
    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()
  • 相对路径
f = open("../190713/1.txt",'r','utf-8')print(f.read())f.close()#推荐使用相对路径

推荐了解热门学科

java培训 Python人工智能 Web前端培训 PHP培训
区块链培训 影视制作培训 C++培训 产品经理培训
UI设计培训 新媒体培训 产品经理培训 Linux运维
大数据培训 智能机器人软件开发




传智播客是一家致力于培养高素质软件开发人才的科技公司“黑马程序员”是传智播客旗下高端IT教育品牌。自“黑马程序员”成立以来,教学研发团队一直致力于打造精品课程资源,不断在产、学、研3个层面创新自己的执教理念与教学方针,并集中“黑马程序员”的优势力量,针对性地出版了计算机系列教材50多册,制作教学视频数+套,发表各类技术文章数百篇。

传智播客从未停止思考

传智播客副总裁毕向东在2019IT培训行业变革大会提到,“传智播客意识到企业的用人需求已经从初级程序员升级到中高级程序员,具备多领域、多行业项目经验的人才成为企业用人的首选。”

中级程序员和初级程序员的差别在哪里?
项目经验。毕向东表示,“中级程序员和初级程序员最大的差别在于中级程序员比初级程序员多了三四年的工作经验,从而多出了更多的项目经验。“为此,传智播客研究院引进曾在知名IT企业如阿里、IBM就职的高级技术专家,集中研发面向中高级程序员的课程,用以满足企业用人需求,尽快补全IT行业所需的人才缺口。

何为中高级程序员课程?

传智播客进行了定义。中高级程序员课程,是在当前主流的初级程序员课程的基础上,增加多领域多行业的含金量项目,从技术的广度和深度上进行拓展“我们希望用5年的时间,打造上百个高含金量的项目,覆盖主流的32个行业。”传智播客课程研发总监于洋表示。




黑马程序员热门视频教程【点击播放】

Python入门教程完整版(懂中文就能学会) 零起点打开Java世界的大门
C++| 匠心之作 从0到1入门学编程 PHP|零基础入门开发者编程核心技术
Web前端入门教程_Web前端html+css+JavaScript 软件测试入门到精通


在线咨询 我要报名
和我们在线交谈!