python3文件操作|Python 3中文件操作open()函数

python3文件操作|Python 3中文件操作open()函数的第1张示图

① python文件操作

我觉得要逐行的话最好这样写:

forlineinfo.readlines():

至于为什么直接fo可以迭代出每行,应该是open函数返回值的内部实现和返回值类型决定的(应该在c代码里,直接转open定义看不见实现细节)。

② 关于python里写文件的操作

fo.close()—你小括号没有。

fo = open("D:/text一.txt","w",encoding = 'utf-8')ls = ['13','14','15']fo.writelines(ls)fo.close()

文件在d盘下面

③ python3 文件读写 注意什么

open()函数返回一个File对象,并且最常用的用法是使用两个参数,open(filename,mode)第一个参数是文件名,第二个参数表示文件的打开方式。只读方式打开可以使用'r',写文件可以使用'w'(这个选项会把当前文件夹中存在同名文件时将该文件擦除),'a'可以用来追加内容,任何内容都会被写入文件的末尾。'r+'会同时读写。mode参数是可选参数,如果没有的话,默认是'r'。一般情况下,文件都是用文本模式打开的,也就意味着,文件读写都是使用某种编码的,末日呢情况下都是用utf-8编码。'b'会用二进制形式打开文件。这个时候,文件读写都是以字节的形式。在文本模式下,默认会把平台相关的换行符(windows平台是\r\n,Linux平台是\n)转换成\n,在写文件时,会把\n转换成平台相关的字符写入。这种后台的操作对于文本会非常有用,但是对于二进制文件如jpeg或exe文件,则会破坏文件,因此在打开这类文件时千万要使用二进制模式打开。

④ python对文件的独操作有哪几种请详细说明每种方法

1.打开文件:f=open(r'E:\PythonProjects\test7\a.txt',mode='rt',encoding='utf-8')以上三个单引号内分别表示:要打开的文件的路径,mode为文件打开方式具体介绍在下文,encoding为文件的字符编码,一般默认为utf-82.读写文件:data=f.read() # 读文件f.write() # 写文件3.关闭文件:f.close()4.为了简便,一般采用上下文的方法进行文件操作,可不用关闭文件with open('a.txt',mode='rt',encoding='utf-8') as f:data=f.read() print(data)with open('a.txt',mode='wt',encoding='utf-8') as f: f.write('hello world')5.控制文件读写的操作:r:(默认模式):只读:以该模式打开文件时,若文件不存在则报错,若文件存在,则文件指针在文件开头,即从文件开头开始读文件w:只写:以该模式打开文件时,若文件不存在则创建一个文件,如文件存在,则清空文件内容,文件指针移到开头a:追加写:以该模式打开文件时,若文件不存在则创建一个文件,如文件存在,则将文件指针移到文件末尾,在文件末尾写入新的内容6.控制文件读写内容的模式:(t 和 b都不能单独使用,必须与r,w,a结合使用)t:(默认):无论读写都是以字符为单位,只能识别文本文件,必须要制定encodingb:无论读写都是以字节为单位,可以识别所有文件,一定不能指定encoding7.文件的拷贝with open ('a.txt',mode='rb') as af,\ open('b.txt',mode='wb') as bf: data=af.read f.write(data)执行程序后,打开文件,即可发现文件已成功拷贝,这里使用 b 而不是用 t 模式,是因为文件有多种格式8.文件的修改:文件的修改是在硬盘上实现文件的覆盖,相当于一个新的文件以旧的文件名来命名的; 文件的修改有俩种方式,分别适用于不同的情景方式一(适用于容量小的文件):这种方式的原理是:创建一个新的文件,将旧文件的内容拷贝到新的文件中;这样内存里就存在俩个文件,故不适用于容量大的文件,具体代码见下方 Viewwith open('a.txt',mode='rt',encoding='utf-8') as f: data=f.read() data_new=data.replace('yang', 'yv')with open('b.txt',mode='wt',encoding='utf-8')as p: p.write(data_new)方式二(适用于容量大的文件):此方式的原理为:读取旧文件的一行内容,修改后写到临时文件中,循环往复直到写完,然后将源文件删除,将临时文件命名为源文件名.这种方式在内存中只存在2行文件,节省内存,可用于大文件import oswith open('b.txt',mode='rt',encoding='utf-8') as f,\ open('.b.txt.swap',mode='wt',encoding='utf-8') as p: for line in f: p.write(line.replace('yv','yang')) # 调用replace方法,将源文件中的'yv',换成'yang'os.remove('b.txt')os.rename('.b.txt.swap','b.txt')9. 文件的阶段:truncate(n)将文件中n个字节后内容全删了,当 n 不存在时,即删除文件全部内容10.文件内指针的移动f.seek(): 指针的移动是以字节为单位的seek 有三种模式:0:(默认模式) 指针在文件开头,只有在 0 模式可以在 t 模式下用,也可以在 b 模式下用,而 1 ,2 模式只能在 b 模式下使用1:指针在当前位置2:指针在文件末尾以下为具体事例:# 0with open('a.txt',mode='rt',encoding='utf-8')as f: f.seek(3,0) print(f.tell()) # 指针当前位置 print(f.read()) # 从指针后读出所有内容 # 1 参照指针当前位置 with open('a.txt',mode='rb')as f: f.read(2) f.seek(4,1) print(f.tell()) print(f.read().decode('utf-8')) # 2 参照文件末尾 with open('a.txt',mode='rb')as f: f.seek(-5,2) print(f.tell()) print(f.read().decode('utf-8'))当 seek处于 2 模式时,可以将文件中新加入的内容打印出来,具体代码如下:# 另一个文件进行写操作,写的代码如下: with open('a.txt',mode='at',encoding='utf-8')as f: f.write('hello world\n')# 每在文件中写入新的内容,都打印出来,以下代码执行打印操作:import timewith open('a.txt',mode='rb')as f: f.seek(0,2) while True: line=f.readline() # readline 可以读取没有内容的部分 # print(line.decode('utf-8')) if len(line)==0: time.sleep(0.1) else: print(line.decode('utf-8'))

⑤ Python3.5 文件操作问题

withopen('Python.txt','r+',encoding='utf8')asf:print(f.read().strip())f.write('cd')f.close()#不提畅这样边读边写,想了解下可以.

⑥ python文件写操作

这样把教你个简单的办法python一般不会在原文件中操作的,一般会读出来,操作,然后再写入的。代码如下:#encoding:gbkinsert='123'#你想插入的字符串line=''#最终文件内容f=open("1.txt","r")i=f.readline()#读取文件内容f.close()pre=i[0:3]last=i[3:]line=pre+insert+lastf=open("1.txt","w")f.write(line)f.close()

⑦ python编程 文件操作

⑧ python文件操作问题

你好:

请看代码:

txtpath1=r"a.txt"txtpath2=r"b.txt"txtpath3=r"c.txt"txtpath4=r"d.txt"fpa=open(txtpath1)fpb=open(txtpath2)fpc=open(txtpath3)fpd=open(txtpath4,"w")arrD=[]forkkkinrange(50):arrD.append(0)defWriteD():forkkkkinarrD:fpd.write(str(kkkk))fpd.write("")fpd.write("")arrC=[]forlinecinfpc.readlines():arrC.append(linec.replace("",""))arrB=[]forlinebinfpb.readlines():arrB.append(lineb.replace("",""))forlineainfpa.readlines():flag=Truelinea=linea.replace("","")foriinrange(len(arrB)):ifarrB[i]==linea:printlineaprintarrB[i]printarrC[i]flag=Falsefpd.write(linea)fpd.write("")fpd.write(arrC[i])fpd.write("")ifflag:printlineafpd.write(linea)fpd.write("")WriteD()print"Done!"fpa.close()fpb.close()fpc.close()fpd.close()

⑨ Python 3中文件操作open()函数

在windows下路径一般写为:“D:\data\python"但是字符串中\是转义字符,所以你可把\写成\\,或者路径前加上r如r"D:\data\python",表面该字符串不进行转义即可

⑩ python可以同时对文件进行读写操作吗

对文件的操作,步骤为:打开一个文件–>读取/写入内容–>保存文件文件读写的3中模式# 1、w 写模式,它是不能读的,如果用w模式打开一个已经存在的文件,会清空以前的文件内容,重新写# w+ 是读写内容,只要沾上w,肯定会清空原来的文件# 2、r 读模式,只能读,不能写,而且文件必须存在# r+ 是读写模式,只要沾上r,文件必须存在# 3、a 追加模式,也能写,在文件的末尾添加内容# 4、rb+、wb+、ab+,这种是二进制模式打开或者读取,一些音乐文件test1.txt1 如果无情的风摘走了那片树叶2 如同摘走了我的心3 在每一个想你的夜晚4 请允许我将你抱紧5 我不像一只大雁可以秋去春来6 衔回丢失的缘分7 所以从来不敢回忆离别8 越是清晰 越是伤心9 你说所有的城市没有不同10 我宁愿相信你心中有片草原1、循环读取文件中的每一行内容:demo1.py1 file = open('test1.txt','r+')# 打开test1.txt 文件2 for line in file: # 遍历file文件3 print('line里面存放的是:',line) # 循环打印文件中每一行内容4 print(type(line)) # <class 'str'> 类型是字符串5 file.close()# 关闭文件用with的方式打开文件,不用担心使用完文件后忘记关闭,它会自动将文件关闭1 with open('test1.txt','r+') as file:2 for line in file:3 print('line里面存放的是:',line) # 循环打印文件中每一行内容4 print(type(line)) # <class 'str'> 类型是字符串3、向文件中写入内容1 with open('users','a+') as fw: # 打开文件2 fw.write('写入文件内容')4、用函数的方式读取文件1 def read_file(filename):2 '''3 用来读取文件内容4 :param filename: 文件名5 '''6 with open(filename,'a+') as fr:7 fr.seek(0) # 移动文件指针8 content = fr.read() # content 类型是字符串9 print('content:',content)10 read_file('users') # 调用函数5、用函数的方式写文件1 def write_file(filename,content):2 '''3 用来读取文件内容的4 :param filename: 文件名5 '''6 with open(filename,'a+') as fw:7 fw.seek(0) # 移动文件指针8 fw.truncate() # 清空文件内容9 fw.write(str(content))10 write_file('a','hello world') # 调用函数

未经允许不得转载:山九号 » python3文件操作|Python 3中文件操作open()函数

赞 (0)