欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實現(xiàn)大文本文件分割

 更新時間:2019年07月22日 10:15:51   作者:Angryshark_128  
這篇文章主要為大家詳細介紹了python實現(xiàn)大文本文件分割,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了python實現(xiàn)大文本文件分割的具體代碼,供大家參考,具體內(nèi)容如下

開發(fā)環(huán)境

Python 2

實現(xiàn)效果

通過文件拖拽或文件路徑輸入,實現(xiàn)自定義大文本文件分割。

代碼實現(xiàn)

 #coding:gbk
 import os,sys,shutil
 
 is_file_exits=False
 while not is_file_exits:
  files_list=[]
  if(len(sys.argv)==1):
   print('請輸入要切割的文件完整路徑:')
   files_path=raw_input().strip()
   for str_file_path in files_path.split(' '):
    if(str_file_path.strip()==''):
     continue
    if(not os.path.exists(str_file_path.strip())):
     print(str_file_path.strip()+'文件路徑不存在,請重新輸入!')
     is_file_exits=False
     break
    else:
     files_list.append(str_file_path.strip());
     is_file_exits=True
  else:
   for str_file_path in sys.argv[1:len(sys.argv)]:
    if(str_file_path.strip()==''):
     continue
    if(not os.path.exists(str_file_path.strip())):
     print(str_file_path.strip()+'文件路徑不存在,請重新輸入!')
     is_file_exits=False
     break
    else:
     files_list.append(str_file_path.strip());
     is_file_exits=True
 
 print('待切割文件:'+str(files_list))
 
 is_continue=False
 while not is_continue:
  print('請輸入要切割的文件個數(shù):')
  str_files_count=raw_input()
  if str_files_count.isdigit():
   is_continue=True
  else:
   print('請輸入正確的數(shù)字!')
 
 for file_path in files_list:
 
  split_file_path=''
  total_lines_count=0
  lines_count=0
  files_count=int(str_files_count)
 
  print('正在統(tǒng)計文本行數(shù).....')
 
  total_lines_count = len(open(file_path,'rU').readlines())
  print('文本總行數(shù):'+str(total_lines_count))
 
  if files_count>total_lines_count:
   print('文本太小,不值得分割!')
   sys.exit()
 
  (filepath,filename) = os.path.split(file_path);
  (filepathname,extension) = os.path.splitext(file_path)
 
  if os.path.exists(filepathname):
   shutil.rmtree(filepathname)
   
  os.mkdir(filepathname)
   
  lines_count=int(total_lines_count/files_count)
  mod_count=total_lines_count%files_count
 
 
  print('正在進行文件分割.....')
 
  line_num=0
  file_num=0
  temp=-1
 
  for line in open(file_path,'rU').readlines():
   if file_num<mod_count:
    file_num=int(line_num/(lines_count+1))
   else:
    file_num=int((line_num-mod_count*(lines_count+1))/lines_count+mod_count)
   
   split_file_path=filepathname+'/'+str.replace(filename,extension,'_'+str(file_num)+extension)
 
   with open(split_file_path,'a+') as split_file:
    split_file.write(line)
 
   if temp!=file_num:
    print('正在生成:'+split_file_path)
   temp=file_num
 
   line_num+=1
 
  print(file_path+'分割完成!')
 
  split_file.close()
  
 os.system('pause')

源碼地址

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 代碼講解Python對Windows服務(wù)進行監(jiān)控

    代碼講解Python對Windows服務(wù)進行監(jiān)控

    本篇文章給大家分享了通過Python對Windows服務(wù)進行監(jiān)控的實例代碼,對此有興趣的朋友可以學(xué)習(xí)參考下。
    2018-02-02
  • Python讀取Excel數(shù)據(jù)并生成圖表過程解析

    Python讀取Excel數(shù)據(jù)并生成圖表過程解析

    這篇文章主要介紹了Python讀取Excel數(shù)據(jù)并生成圖表過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • python編寫實現(xiàn)抽獎器

    python編寫實現(xiàn)抽獎器

    這篇文章主要為大家詳細介紹了python編寫實現(xiàn)抽獎器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • Django給表單添加honeypot驗證增加安全性

    Django給表單添加honeypot驗證增加安全性

    這篇文章主要介紹了Django給表單添加honeypot驗證增加安全性的方法,幫助大家更好的理解和學(xué)習(xí)使用Django框架,感興趣的朋友可以了解下
    2021-05-05
  • pandas篩選數(shù)值列和非數(shù)值列方式

    pandas篩選數(shù)值列和非數(shù)值列方式

    這篇文章主要介紹了pandas篩選數(shù)值列和非數(shù)值列方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • 深入探討PythonLogging模塊的高級用法與性能優(yōu)化

    深入探討PythonLogging模塊的高級用法與性能優(yōu)化

    在Python應(yīng)用程序中,日志處理是一項至關(guān)重要的任務(wù),本文將探索Logging模塊的高級用法,包括日志級別、格式化、處理程序等方面的功能,需要的可以參考下
    2024-04-04
  • Python的列表和元組詳情

    Python的列表和元組詳情

    這篇文章主要介紹了Python的列表和元組,列表和元組是python組常見的內(nèi)置內(nèi)省,下面文章我們講圍繞Python的列表和元組的相關(guān)資料展開話題,感興趣的小伙伴以參考一下
    2021-10-10
  • python讀文件的步驟

    python讀文件的步驟

    在本篇文章里小編給大家分享的是關(guān)于python讀文件的步驟以及相關(guān)知識點,需要的朋友們參考下。
    2019-10-10
  • python遍歷字符串中每一個字符的4種方式

    python遍歷字符串中每一個字符的4種方式

    很多計算過程都需要每次從一個字符串中取一個字符,下面這篇文章主要給大家介紹了關(guān)于python遍歷字符串中每一個字符的4種方式,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-05-05
  • scrapy中的spider傳參實現(xiàn)增量的方法

    scrapy中的spider傳參實現(xiàn)增量的方法

    有時候需要根據(jù)項目的實際需求向spider傳遞參數(shù)來控制spider的運行方式,本文主要介紹了scrapy中的spider傳參實現(xiàn)增量的方法,具有一定的參考價值,感興趣的可以了解一下
    2022-06-06

最新評論