[问题] 帮忙解释一下这几行程式

楼主: Dong0129 (阿东跟上面讲的情况一样b)   2015-04-20 22:24:46
各位版友好,
之前在网络上找到一段程式码,
但是我看不太懂它作业的过程,
能否请教版友是否能够解释呢?
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的过程里看到时常用[:]这种用法描述字串的变动,
请问能够稍微讲解一下吗?或是有关键字能够找到相关的教学呢?
作者: liataian (T-PANY FOREVER)   2015-04-20 22:58:00
"12345"[:] => "12345", "12345"[1:5] => "2345""12345"[1:5:2] => "24"简单说就是: [从这个索引:到这个索引减1:一次跳几个]
作者: bigpigbigpig (To littlepig with love)   2015-04-20 23:15:00
画个图会更容易了解,这也是 zip 最漂亮的用法之一[start:end:step]=> python slicing operator

Links booklink

Contact Us: admin [ a t ] ucptt.com