在python中使用with打开多个文件的方法
作者:忆向Blog 发布时间:2023-05-03 16:33:45
标签:python,with,文件
虽然初恋是java, 可是最近是越来越喜欢python,所以决定追根溯源好好了解下python的原理,架构等等.小脑袋瓜不太好使,只能记录下慢慢进步吧
使用with打开文件的好处不多说,这里记录一下如果要打开多个文件,该怎么书写简捷的代码。
场景是同时打开三个文件,文件行数一样,程序实现每个文件依次读取一行,同时输出。 首先来一种比较容易想到的写法,如下一样嵌套:
with open('file1') as f1:
with open('file2') as f2:
with open('file3') as f3:
for i in f1:
j = f2.readline()
k = f3.readline()
print(i,j,k)
注意,这里只能对一个文件进行for循环读取,不能写成:
for i,j,k in f1,f2,f3:
print(i,j,k)
这么多层缩进太恶心了,还是来一种简洁些的写法:
with open('file1') as f1, open('file2') as f2, open('file3') as f3:
for i in f1:
j = f2.readline()
k = f3.readline()
print(i,j,k)
还有一种优雅一点的写法:
from contextlib import nested #这个包是python2中的,不使用python3
with nested(open('file1'), open('file2'), open('file3')) as (f1,f2,f3):
for i in f1:
j = f2.readline()
k = f3.readline()
print(i,j,k)
来源:https://www.hustyx.com/python/119/
0
投稿
猜你喜欢
- 1. 字符编码简介1.1. ASCIIASCII(American Standard Code for Information Interc
- 我的需求:手动配置X轴、Y轴、图表标题等参数自动通过Pyecharts模块生成可视化的html数据图表,并将浏览器图表展示到UI界面上。制作
- 本文实例讲述了Python将阿拉伯数字转换为罗马数字的方法。分享给大家供大家参考。具体实现方法如下:def numToRomanNum(Nu
- 基于 python django源码前期准备安装库:pip install django-haystackpip install whoos
- pygame创建游戏窗口界面,供大家参考,具体内容如下使用pygame前一定要先导入pygame而且肯定要先初始化pygameimport
- 在应用中,有时候会 依赖第三方模块执行方法,比如调用某模块的上传下载,数据库查询等操作的时候,如果出现网络问题或其他问题,可能有超时重新请求
- 摘要django框架本身自带有登录注册,也可以自己写登录注册,下面将介绍这这2种方式实登录注册一、自己写登录注册登出1.注册regist注册
- 后下载sql sever 2005 express单独安装,发现总是到了安装MSXML 6时出错。然而打算在控制面板里删除MSXML 6 S
- 第一种import win32clipboardimport time#速度快 容易出错class niubi(): def l
- 本文实例讲述了Python爬取需要登录的网站实现方法。分享给大家供大家参考,具体如下:import requestsfrom lxml im
- 本文实例讲述了Python实现将一个正整数分解质因数的方法。分享给大家供大家参考,具体如下:遇到一个python编程联系题目:将一个正整数分
- 一、环境搭建1、安装python+pycharm软件 。python安装网址官网:https://www.python.org/about/
- 【eval()函数】 JavaScript有许多小窍门来使编程更加容易。 其中之一就是eval()函数,这个函数可以把一个字符串当作一个Ja
- 本文实例为大家分享了python实现图片转换成素描和漫画格式的具体代码,供大家参考,具体内容如下原图图片转换后的成果源码# -*- codi
- 元组Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并
- 不废话,直接看代码,需要的根据需求完善。var getKeyCode = function (key) { var key_co
- 一、题意理解给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构的”。现给定两棵树,请你判断它们是否是
- 前两天我在工作中遇到这样一个问题,我们有一个程序是用来增量抽取EBS 中的表数据的,有的是全量抽取,即先删除原表中的数据,然后重新抽取数据,
- psutil是一个跨平台的Python库,它允许你获取有关系统进程和系统资源使用情况的信息。它支持Windows、Linux、OS X、Fr
- 一、先开启xp_cmdshell打开外围应用配置器—>功能的外围应用配置器—>实例名\Database Engine\xp_cm