在python中使用with打開多個文件的方法
雖然初戀是java, 可是最近是越來越喜歡python, 所以決定追根溯源好好了解下python的原理,架構(gòu)等等.小腦袋瓜不太好使,只能記錄下慢慢進(jìn)步吧
使用with打開文件的好處不多說,這里記錄一下如果要打開多個文件,該怎么書寫簡捷的代碼。
場景是同時打開三個文件,文件行數(shù)一樣,程序?qū)崿F(xiàn)每個文件依次讀取一行,同時輸出。 首先來一種比較容易想到的寫法,如下一樣嵌套:
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)
注意,這里只能對一個文件進(jìn)行for循環(huán)讀取,不能寫成:
for i,j,k in f1,f2,f3: print(i,j,k)
這么多層縮進(jìn)太惡心了,還是來一種簡潔些的寫法:
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)
還有一種優(yōu)雅一點的寫法:
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)
以上這篇在python中使用with打開多個文件的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python學(xué)習(xí)工具jupyter notebook安裝及用法解析
這篇文章主要介紹了Python學(xué)習(xí)工具jupyter notebook安裝及用法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-10-10python中24小時制轉(zhuǎn)換為12小時制的方法
最近需要實現(xiàn)一個需求,求用戶輸入24小時制的時間,然后顯示12小時制的時間。具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-06-06Python + OpenCV 實現(xiàn)LBP特征提取的示例代碼
這篇文章主要介紹了Python + OpenCV 實現(xiàn)LBP特征提取的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07python標(biāo)準(zhǔn)算法實現(xiàn)數(shù)組全排列的方法
這篇文章主要介紹了python標(biāo)準(zhǔn)算法實現(xiàn)數(shù)組全排列的方法,實例分析了全排列的原理與Python實現(xiàn)技巧,需要的朋友可以參考下2015-03-03python使用Tkinter顯示網(wǎng)絡(luò)圖片的方法
這篇文章主要介紹了python使用Tkinter顯示網(wǎng)絡(luò)圖片的方法,涉及Python操作圖片的相關(guān)技巧,需要的朋友可以參考下2015-04-04