ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python基础 文本控制 文件编码格式 使用python读写文件 常用的文件打开方式

2022-02-24 23:32:13  阅读:211  来源: 互联网

标签:文件 Python 写入 python 内容 file 打开 open


编码格式:

常见的字符编码格式
Python的解释器使用的是Unicode(内存)
.py文件在磁盘上使用UTF-8存储(外存)

文件的读写原理:

1.文件的读写俗称“IO操作”  I是指input输入,O是指output输出,所以说IO操作就是输入输出操作。
IO的原理就是一种数据结构,叫做队列,先进先出的方式。
2.文件读写操作流程
3.操作原理:
    Python操作文件---打开或新建文件---读、写文件---关闭资源

文件的读写操作:

1.内置函数open()创建文件对象:
通过IO流将磁盘文件中的内容与程序中的对象中的内容进行同步
2.语法规则:
file=open(filename[mode,encoding])

语法中的含义:

file  被创建的文件对象
open() 创建文件对象的函数
filename  要创建或打开的文件名称
mode    打开模式默认为只读   mode是要创建一个文件还是打开一个文件,写的操作是w,读的操作是r
encoding   默认文本文件中字符的编写格式为gbk


#在E://python text的位置创建一个a.txt的记事本文件,在文件中输入中国。然后用Python来读取这个文件
# 记事本文件默认是gbk的文件编码格式,而python默认是UTF-8的编码格式,所以无法直接读取
#file=open("E://python text/a.txt", "r",encoding="UTF-8")
#open打开,open(第一个参数位置输入文件的位置,第二个参数位置输入读(r),或写(w),第三个位置输入编码格式encoding="编码格式"),然后将这个结果赋值给file

file=open("E://python text/a.txt","r",encoding="UTF-8")    #file等于a.txt文件、
print(file.readlines())    #file.readlines()读取file的内容并输出
file.close()     #关闭file文件

常用的文件打开方式

​​​​文件类型:
    按文件中数据的组织形式,文件分为以下两大类:
        1.文本文件:存储的是普通"字符"文本,默认为unicode字符集,可以使用记事本程序打开
        2.二进制文件:把数据内容用"字节进行存储",无法用记事本打开,必须使用专用的软件打开,
        举例:mp3音频文件,jop图片,doc文档等

打开方式:
r   以只读的模式打开文件,文件的指针将会在文件的开头
w   以只写的模式打开文件,如果文件不存在则创建,如果文件存在,则覆盖原有内容,文件指针在文件的开头。注意:w写入的内容会将源文件的原内容替换掉
a   以追加的模式打开文件,如果文件不存在则创建,文件指针在文件开头,如果文件存在,则在文件末尾追加内容,文件指针在源文件末尾。注意:a写入的内容不会替换源文件的内容,只会追加输入到源文件内容的后面。
b   以二进制方式打开文件,不能单独使用,需要与其他模式一起使用,rb,或者wb
+   以读写方式打开文件,不能单独使用,需要与其他模式一起使用。

#w,只写的方式打开文件,每次写入内容会替换文件里原有的内容。
hua=open("b.txt","w")   #没有b.txt文件则创建改文件,再写入文件
hua.write("华哥最帅!")   #如果已经存在该文件,则将此写入的内容替换掉原文件原有的的内容,因为会每次运行都会替换掉原来的内容,所以运行再多次,也只有这句话。
file.close()    #关闭文件
#a,追加的模式打开文件,每次写入内容都会在源文件内容的后面追加输入,不会替换源文件内容。
zhi=open("b.txt","a")   #以a的打开方式打开该文件,zhi变量等于b.txt文件
zhi.write("大帅比")     #因为a的打开方式不会替换源文件的内容,只会将写入结果追加在原内容后面,所以运行三次之后,文件会出现三个大帅比

file.close()


wei=open("E://python text/dazi.png","rb")     #将初始的daizi.png格式的文件以二进制只读的方式打开
zhiwei=open("E://python text/da.png","wb")    #因为没有da.png文件,所以就创建一个,并以二进制的方式写入
zhiwei.write(wei.read())      #read(),若括号里没有写读取几个字节,那么则读取文件所有字节并返回,这里是将文件里的字节读取后都写入到了zhiwei这个文件里。

wei.close()    #结束后记得关闭文件
zhiwei.close()     #结束后记得关闭文件

文件对象的常用方法:

read([size])    从文件中读取size个字节或字符的内容返回。若省略          [size],则读取到文件末尾,即一次读取文件所有内容。
readline()      从文本文件中读取一行内容
readlines()     把文本文件中每一行都作为独立的字符串对象,并将这些对象放入列表返回
write(str)      将字符串str内容写入文件

writelines(s_list)      把字符串列表s_list写入文本文件,不添加换行符

seek(offset[,whence])      把文件指针移动到新的位置,offset表示相对于whence的位置:
                            offset:参数为正往结束方向移动,参数为负往开始方向移动
                            whence不同的值代表不同的含义:
                            0:从文件头开始计算(默认值)
                            1:从当前位置开始计算
                            2:从文件尾开始计算

tell()      返回文件指针的当前位置
flush()     把缓冲区的内容写入文件,但不关闭文件
close()     把缓冲区的内容写入文件,同时关闭文件,释放文件对象相关资源

标签:文件,Python,写入,python,内容,file,打开,open
来源: https://blog.csdn.net/weixin_53466908/article/details/123123256

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

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

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

ICode9版权所有