欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

python實(shí)現(xiàn)大文件分割與合并-創(chuàng)新互聯(lián)

很多時候我們會面臨大文件無法加載到內(nèi)存,或者要傳輸大文件的問題。這時候就需要考慮將大文件分割為小文件進(jìn)行處理了。

沙灣ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

下面是一種用python分割與合并分件的實(shí)現(xiàn)。


import os
FILE_DIR = os.path.dirname(os.path.abspath(__file__))

#========================================================
# 文件操作
#========================================================
def get_filelist1(dir, postfix):
  '''
  按照后綴返回文件名列表
  INPUT -> 目錄地址, 文件后綴
  OUTPUT -> 文件名列表
  '''
  return [os.path.join(dir, f) for f in os.listdir(dir) if f.endswith(postfix)]

def get_filelist2(dir, preffix):
  '''
  按照前綴返回文件名列表
  INPUT -> 目錄地址, 文件前綴
  OUTPUT -> 文件名列表
  '''
  return [os.path.join(dir, f) for f in os.listdir(dir) if f.startswith(preffix)]

def get_file_postfix(filename):
  '''
  獲取文件名后綴
  INPUT -> 文件名
  OUTPUT -> 文件后綴
  '''
  file = os.path.splitext(filename)
  preffix, postfix = file
  return postfix

def get_file_preffix(filename):
  '''
  獲取文件名前綴
  INPUT -> 文件名
  OUTPUT -> 文件前綴
  '''
  file = os.path.splitext(filename)
  preffix, postfix = file
  return preffix

def file_chunkspilt(path, filename, chunksize):
  '''
  文件按照數(shù)據(jù)塊大小分割為多個子文件
  INPUT -> 文件目錄, 文件名, 每個數(shù)據(jù)塊大小
  '''
  if chunksize > 0:
    filepath = path+'/'+filename
    partnum = 0
    inputfile = open(filepath, 'rb')
    while True:
      chunk = inputfile.read(chunksize)
      if not chunk:
        break
      partnum += 1
      newfilename = os.path.join(path, (filename+'_%04d' % partnum))
      sub_file = open(newfilename, 'wb')
      sub_file.write(chunk)
      sub_file.close()
    inputfile.close()
  else:
    print('chunksize must bigger than 0!')

def file_linespilt(path, filename, limit):
  '''
  文件按照行分割成多個子文件
  INPUT -> 文件目錄, 文件名, 行數(shù)
  '''
  if limit > 0:
    preffix = get_file_preffix(filename)
    postfix = get_file_postfix(filename)
    file_count = 0
    l_list = []
    with open(path+'/'+filename, 'rb') as f:
      for line in f:
        l_list.append(line)
        if len(l_list) < limit:
          continue
        subfile = preffix+"_"+str(file_count)+"."+postfix
        with open(FILE_DIR+'/'+subfile, 'wb') as file:
          for l in l_list[:-1]:
            file.write(l)
          file.write(l_list[-1].strip())
          l_list=[]
          file_count += 1
  else:
    print('limit must bigger than 0!')

def file_combine(path, filename):
  '''
  子文件合并
  INPUT -> 文件目錄, 文件名
  '''
  filepath = path+'/'+filename
  partnum = 0
  outputfile = open(filepath, 'wb')
  subfile_list = get_filelist2(FILE_DIR, filename+'_')
  for subfile in subfile_list:
    temp = open(subfile, 'rb')
    outputfile.write(temp.read())
    temp.close()
  outputfile.close()

標(biāo)題名稱:python實(shí)現(xiàn)大文件分割與合并-創(chuàng)新互聯(lián)
鏈接分享:http://aaarwkj.com/article44/ccpoee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、虛擬主機(jī)、企業(yè)網(wǎng)站制作手機(jī)網(wǎng)站建設(shè)、微信小程序電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司
欧美精品在,欧美一区二区| 国产亚洲综合另类色专区| 国产超碰久久久久久精品| 国产精品一级二区三区| 精品欧美一区二区三区在线| 日本一区二区欧美在线| 亚洲欧洲一区二区免费| 在线观看免费在线观看免费| 欧美一区二区国产精品日韩| 国产成人久久精品二区三区| 国产亚洲av看码精品永久| 男人天堂在线视频网站| 精品国产一区二区av麻豆| 国产一级二级三级久久| 亚洲国产区男人的天堂| 美女高潮呻吟免费观看久久久| 无遮挡无掩盖的免费网站| 欧美福利区免费观看视频| 国产91在线观看网站| 亚洲一区二区三区久久伊人| 亚洲日本一区二区高清| 六十路人妻一区二区三区| 黑人巨大精品欧美一区免| 98热这里只有精品视频| 最新亚洲av熟女播放| 日本欧美一区中文字幕| 992免费影院 在线观看| 老色鬼久久亚洲av综合| 99蜜桃臀成人美女视频| 白白色最新福利在线视频观看| av剧情网址在线观看| 亚洲男人av天堂午夜在| 人妻熟女一区二区aⅴ在线视频 | 婷婷久久五月综合激情| 成人福利网站午夜一区| 亚欧乱色熟女一区二区三区| 国产精品久久久久久爽| 综合久久99中文综合久久| 欧美日韩精品激情一区二区| 国产91极品尤物白丝美女| 美女网站色在线免费观看午夜精品|