当前位置:首页 » 编程语言 » python读取多个文件

python读取多个文件

发布时间: 2023-04-16 00:30:04

python 多个文件怎么调用

同时打开三个文件,文件行数一样,要求实现每个文件依次读取一行,然后输出,我们先来看比较容易想到的写法:

with open(filename1, 'rb') as fp1:
with open(filename2, 'rb') as fp2:
with open(filename3, 'rb') as fp3:
for i in fp1:
j = fp2.readline()
k = fp3.readline()
print(i, j, k)

注意这里只能对单个文件进行for循环读取,不能写成:

for i, j, k in fp1, fp2, fp3:
print(i, j, k)

但可使用强大的zip操作:

for i, j, k in zip(fp1, fp2, fp3):
print(i, j, k)

这样层层的嵌套未免啰嗦,with结构支持一种更简洁的写法:

with open(filename1, 'rb') as fp1, open(filename2, 'rb') as fp2, open(filename3, 'rb') as fp3:
for i in fp1:
j = fp2.readline()
k = fp3.readline()
print(i, j, k)

或者使用更为优雅的写法,此时需要contextlib语法糖:

from contextlib improt ExitStack
with ExitStack() as stack:
files = [stack.enter_context(open(fname)) for fname in [filename1, filename2, filename3]]
for i, j, k in zip(files[0], files[1], files[2]):
print(i, j, k)

㈡ Python文件读写

常见的读写操作:

Python内置了读写文件的函数,用法和C是兼容的。本节介绍内容大致有:文件的打开/关闭、文件对象、文件的读写等。仅示例介绍 TXT 类型文档的读写,也就是最基础的文件读写,也需要注意编码问题;

open()   close()     with open(...) as ...

看以下示例就能了解 Python 的 open() 及 close() 函数。这边调用 read()方法可以一次读取文件的全部内容,Python把内容读到内存,用一个str对象表示,具体使用参见下文。

在 E 盘 python_file 文件夹下新建一 a.txt,输入随意,如下:

Python 操作 打开及关闭方式 如下:

注意 open() 之后 一定要 close()。但由于文件读写时都可能产生IOError,为了保证无论是否出错都能正确地关闭文件,我们用 try ... finally 来实现:

python 简化了改写法,即用 with open(...) as ...  ; 建议之后文件读写都用该写法:

上面,你肯定注意到了参数 "r";该参数决定了打开文件的模式:只读,写入,追加等。所有可取值见如下的完全列表。这个参数是非强制的,默认文件访问模式为只读(r)。

相关参数:

File 对象

file 为一对象,它有一些内置属性,如下

file对象的属性:

read()    read(size)   readline()   readlines()

之前的例子已经接触到了 read() 函数,该函数会会一次性读取文件的全部内容,如果能确保文件的大小,自然可以。但若文件过大,内存就爆了,所以,可以反复调用read(size)方法,每次最多读取size个字节的内容;也可调用 readline() 每次读取一行内容;而调用readlines()可以一次读取所有内容并按行返回list。总之,根据需求来。仅以 txt 文件为例,其他的文件读取需要特殊处理;另外,文件的格式编码方式也需要注意;这边仅介绍读取方法,其他的会出专题来学习。

在D:\python_file 下新建 poet.txt;示例如下,由于一个中文会占多个字节,故read(size) 部分会乱码,如:

write()

写文件和读文件是一样的,唯一区别是调用open()函数时,传入标识符'w'或者'wb'表示写文本文件或写二进制文件;'a' 对应的表示追加等。

如下示例,由于 write.txt 文件不存在,创建该文件并写入:

在上例基础上,继续,该文件被重写:

继续,这次使用追加,会在文件结尾追加:

https://blog.csdn.net/msspark/article/details/86745391

https://www.cnblogs.com/tianyiliang/p/8192703.html

https://www.cnblogs.com/camilla/p/7234657.html

https://blog.csdn.net/songlh1234/article/details/83316468

https://www.php.cn/python-tutorials-412484.html

https://blog.csdn.net/weay/article/details/80946152

https://blog.csdn.net/xc_zhou/article/details/81044836

㈢ python如何从一个文件夹中读取多个.dat文件

用glob模块,指定后缀.dat,即可。

importglob

dir='homeyour_data_file'
forfinglob.glob(dir+'*.dat'):
contents=open(f,'r').read()

㈣ python同时读写多个文件暨大型json文件读取方法

最近处理NLP数据集时,需要一边读json文件,一边向自己创建的txt写入提取出的对话数据集,即同时读写多个文件,本来记得以前在哪看过这波操作的,但时间有点久了,忘了。

又由于新换了mac,win上原有的梯子挂了,这就很离谱,因此也没法谷歌,只能用网络凑合着查了一番,看看有没有大佬记录了这个小tip。但是很遗憾,网上找到的方法都很捞,简直是海底捞,没办法。好在脑子里还有点印象,修修改改总算写出来了,在此做个记录,同时也开源方便一下诸位道友。

你是不是觉得我很捞,很菜,连个文件读写都不会~
那么,对不起,诸位,现在,我要起飞了,你以为你是第二层,我是第一层,实际上,我在第五层,且看我写给你看~

最后,如果有道友对俺的开放域对话数据集感兴趣,这个其实也是开源的
数据集链接

㈤ Python读取文件内容的方法有几种

filename=open('i:\\install\\test.txt','r+')#读取xx路径xx文件;r+代表的是读写并存方式 print filename.read()#读取所有的文件

热点内容
androidcursor遍历 发布:2024-11-02 00:27:40 浏览:767
网易我的世界地皮服务器大全 发布:2024-11-02 00:24:20 浏览:964
光宇国际服怎么安卓转ios 发布:2024-11-02 00:14:23 浏览:170
魔兽世界单机数据库 发布:2024-11-01 23:37:11 浏览:698
配置vlan后如何配置电脑ip 发布:2024-11-01 23:21:16 浏览:546
中铁盾构机密码是多少 发布:2024-11-01 23:07:21 浏览:708
工规存储 发布:2024-11-01 22:59:33 浏览:802
无法识别加密狗 发布:2024-11-01 22:47:03 浏览:599
手机怎么给wifi改密码怎么办啊 发布:2024-11-01 22:46:03 浏览:858
抖音账号的密码是由什么组成 发布:2024-11-01 22:45:27 浏览:449