作者Dong0129 (阿东)
看板Python
标题[问题] 请问这段程式码的问题
时间Wed Mar 18 11:39:43 2015
请问以下程式码跟资料怎麽让它在读取第2个档案时将资料放到下一行?
def joinlns(lns,spliter=","):
return spliter.join([ln.strip() for ln in lns])
lines=open(file1).readlins()
mergedlines=[joinlns(x,spliter=" > ") for x in zip([::1],lines[1::1])]
with open(file2,'a') as handle:
handle.write("\n".join(mergedlines))
file_example1 in file1:
1
2
3
file2:
1 > 2
2 > 3
但是当我放入第2个档案到file1时...
file_example2 in file1:
4
5
6
file2:
1 > 2
2 > 34 > 5
5 > 6
但我想要得到的是:
file2:
1 > 2
2 > 3
4 > 5
5 > 6
请问有什麽解决办法吗...?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.135.10.151
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1426649986.A.AB3.html
1F:→ uranusjr: 写完资料关档案之前多写一个换行啊 03/18 11:59
handle.write('\n'.join(mergedlines)+'\n')
假如读到空档案会自动加空白行,因为之後还有函式要对这个文件做处理,
所以想说有没有方法能够直接在这个函式里做完~
谢谢您的意见!
※ 编辑: Dong0129 (140.135.10.151), 03/18/2015 13:22:12
2F:→ uranusjr: 啊就如果读到空档案就不要加空白行罗 03/18 16:54
3F:→ uranusjr: 然後有什麽需求拜托一次讲完, 不要挤牙膏 03/18 16:55
抱歉抱歉,不是挤牙膏啦,我知道可以用删除空白行的做法,
只是想说有没有更快的方法可以做而已@@
毕竟能动以後要思考怎麽样提高效率不是吗@@?
造成您的误会真的很抱歉!
※ 编辑: Dong0129 (36.225.118.164), 03/18/2015 20:48:33