Re: [問題] File1內容跳一行再加File2內容

看板Python作者 (阿糾)時間10年前 (2015/04/17 14:48), 編輯推噓2(208)
留言10則, 4人參與, 最新討論串3/3 (看更多)
※ 引述《bigpigbigpig (To littlepig with love)》之銘言: : ※ 引述《Dong0129 (阿東)》之銘言: : : 請問各位版友, : : 我有兩個檔案, : : File1: File2: : : 1 5 : : 2 6 : : 3 7 : : 4 8 : : 要合併成: : : File3: : : 1 5 : : 2 6 : : 3 7 : : 4 8 : : 目前的code: : : rfd1=open("file1","r") : : rfd2=open("file2","r") : : wfd=open("file3","w") : : for i in rfd1: : : if i[-1]=='\n': : : i=[0:-1] : : wfd.write(i) : : for i in rfd2: : : wfd.write('\t'+i) : : break : : rfd1.close() : : rfd2.close() : : wfd.close() : : 目前想出來也可用的程式碼如上, : : 但在思考是否有更好更短的寫法呢?? : : 還算是python初學者...所以寫的不夠好請見諒!! with open("file1", "r") as f1, open("file2", "r") as f2, open("file3", "w") as f3: for (i, j) in map(None, f1.readlines(), f2.readlines): f3.writeline("%s %s" % (i.strip() if i else "", j.strip() if j else "") 這樣? -- 一直很想按 esc + :wq 離開… -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.10.190 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1429253322.A.0A7.html

04/17 15:17, , 1F
請問map的功能是什麼呢?
04/17 15:17, 1F

04/17 17:07, , 3F
以這裡的用法跟 zip 有點像,好處是可以處理不同長度的
04/17 17:07, 3F

04/17 17:07, , 4F
list,它會自動幫少的那邊補 None
04/17 17:07, 4F

04/17 17:09, , 5F
http://goo.gl/q4Vafj 找到中文的說明給你參考
04/17 17:09, 5F

04/17 20:12, , 6F
用 itertools.longest_zip 更方便
04/17 20:12, 6F

04/17 20:12, , 7F
不過用 shell 最快:$ paste -d ' ' file1 file2
04/17 20:12, 7F

04/17 21:17, , 8F
itertools zip_longest()
04/17 21:17, 8F

04/18 10:45, , 9F
找機會來研究一下...不過python在台灣算流行嗎??
04/18 10:45, 9F

04/18 13:49, , 10F
在台灣流不流行不重要, 網路上資源很多, 社群也很多
04/18 13:49, 10F
文章代碼(AID): #1LCApA2d (Python)
文章代碼(AID): #1LCApA2d (Python)