python_文本文件里面随机抽取若干行,写入新的文本文件里面


天一直阴沉沉的,真想早点下班啊。。。。。。

 

 1 #encoding=utf-8
 2 import random
 3 from sets import Set
 4    
 5 def copyfile(srcfile, dstfile, linenum):
 6      """
 7          get linenum different lines out from srcfile at random
 8          and write them into dstfile
 9      """
10      result = []
11      ret = False
12      try:
13          srcfd = open(srcfile,'r')
14      except IOError:
15          print 'srcfile doesnot exist!'
16          return ret
17      try:
18          dstfd = open(dstfile,'w')
19      except IOError:
20          print 'dstfile doesnot exist!'
21          return ret
22      srclines = srcfd.readlines()
23      srclen = len(srclines)
24      while len(Set(result)) < int(linenum):
25          s = random.randint(0,srclen-1)
26          result.append(srclines[s])
27      for content in Set(result):
28          dstfd.write(content)
29      srcfd.close()
30      dstfd.close()
31      ret = True
32      return ret
33   
34 if __name__ == "__main__":
35      srcpath = raw_input('input srcfile path')
36      dstpath = raw_input('input dstfile path')
37      linenum = raw_input('input linenum')
38      print copyfile(srcpath,dstpath,linenum)

 

 hadoop快点跑吧。。。。。。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM