看板 Python 關於我們 聯絡資訊
各位版友好, 之前在網路上找到一段程式碼, 但是我看不太懂它作業的過程, 能否請教版友是否能夠解釋呢? file1: 1 2 3 file2: 1>2 2>3 ... 這支程式是能夠將file1裡的資料重新整理成file2的資料, def joinlns(lns,spliter=","): return spliter.join([ln.strip() for ln in lns]) lines=open(file1).readlines() mergedlines=[joinlns(x,spliter)=">"] for x in zip(lines[::1],lines[1::1]) with open(file2,'a') as handle: handle.write('\n'.join(mergedlines)+'\n') 程式碼如上... 另外想額外請教,在讀python的過程裡看到時常用[:]這種用法描述字串的變動, 請問能夠稍微講解一下嗎?或是有關鍵字能夠找到相關的教學呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.113.177 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1429539890.A.7D8.html ※ 編輯: Dong0129 (220.137.113.177), 04/20/2015 22:25:13
liataian: "12345"[:] => "12345", "12345"[1:5] => "2345" 04/20 22:58
liataian: "12345"[1:5:2] => "24" 04/20 22:59
liataian: 簡單說就是: [從這個索引:到這個索引減1:一次跳幾個] 04/20 23:01
bigpigbigpig: 畫個圖會更容易瞭解,這也是 zip 最漂亮的用法之一 04/20 23:15
bigpigbigpig: [start:end:step]=> python slicing operator 04/20 23:26