• python 文件分割成几份


    1. num_pieces =100 #文件分成多少份
    2. with open('data/train.json', 'r', encoding='utf8') as f:
    3. single = f.read() #读取全部
    4. len_single = len(single)
    5. for i in range(num_pieces):
    6. a = len_single // num_pieces * i
    7. b = len_single // num_pieces * (i + 1)
    8. print( a,":",b)
    9. single_ids = single[a:b] #这里取值范围 不包含b 而是b-1,因为b是下标,下标取值时是从0开始
    10. #
    11. #把分割的字符串写入一个文件
    12. with open('data/' + 'new_samll_split_{}.txt'.format(i), 'w', encoding='utf8') as f:
    13. for id in single_ids[:-1]:
    14. f.write(str(id))
    15. f.write(str(single_ids[-1]))
    16. f.write('\n')

    文件长度 :文件有多少字符

    i=0到要分解的份数-1

    取值范围:[文件长度 // 要分解的份数 * 当前第几个分割数 : (文件长度 // 要分解的份数 * 下一个分割数)-1]

    single[len_single // num_pieces * i: len_single // num_pieces * (i + 1)]

    注意下标和长度的区别,下标取值时,下标是从0开始, 所以59616是长度,还要减去1才是下标的范围

    不保证能完全分完,有的文件长度会有剩余分不了

    例子:

    文件长度:5961699

    要分解的份数:100

    当前第1个分割数:下标从0开始

    [5961699//100*0 :  5961699//100*1]

    结果

    0 : 51497
    51497 : 102994
    102994 : 154491
    154491 : 205988
    205988 : 257485
    257485 : 308982
    308982 : 360479
    360479 : 411976
    411976 : 463473
    463473 : 514970
    514970 : 566467
    566467 : 617964
    617964 : 669461
    669461 : 720958
    720958 : 772455
    772455 : 823952
    823952 : 875449
    875449 : 926946
    926946 : 978443
    978443 : 1029940
    1029940 : 1081437
    1081437 : 1132934
    1132934 : 1184431
    1184431 : 1235928
    1235928 : 1287425
    1287425 : 1338922
    1338922 : 1390419
    1390419 : 1441916
    1441916 : 1493413
    1493413 : 1544910
    1544910 : 1596407
    1596407 : 1647904
    1647904 : 1699401
    1699401 : 1750898
    1750898 : 1802395
    1802395 : 1853892
    1853892 : 1905389
    1905389 : 1956886
    1956886 : 2008383
    2008383 : 2059880
    2059880 : 2111377
    2111377 : 2162874
    2162874 : 2214371
    2214371 : 2265868
    2265868 : 2317365
    2317365 : 2368862
    2368862 : 2420359
    2420359 : 2471856
    2471856 : 2523353
    2523353 : 2574850
    2574850 : 2626347
    2626347 : 2677844
    2677844 : 2729341
    2729341 : 2780838
    2780838 : 2832335
    2832335 : 2883832
    2883832 : 2935329
    2935329 : 2986826
    2986826 : 3038323
    3038323 : 3089820
    3089820 : 3141317
    3141317 : 3192814
    3192814 : 3244311
    3244311 : 3295808
    3295808 : 3347305
    3347305 : 3398802
    3398802 : 3450299
    3450299 : 3501796
    3501796 : 3553293
    3553293 : 3604790
    3604790 : 3656287
    3656287 : 3707784
    3707784 : 3759281
    3759281 : 3810778
    3810778 : 3862275
    3862275 : 3913772
    3913772 : 3965269
    3965269 : 4016766
    4016766 : 4068263
    4068263 : 4119760
    4119760 : 4171257
    4171257 : 4222754
    4222754 : 4274251
    4274251 : 4325748
    4325748 : 4377245
    4377245 : 4428742
    4428742 : 4480239
    4480239 : 4531736
    4531736 : 4583233
    4583233 : 4634730
    4634730 : 4686227
    4686227 : 4737724
    4737724 : 4789221
    4789221 : 4840718
    4840718 : 4892215
    4892215 : 4943712
    4943712 : 4995209
    4995209 : 5046706
    5046706 : 5098203
    5098203 : 5149700

  • 相关阅读:
    类和对象(上)--关于面向对象,类的定义,访问限定符,this指针
    Android系统设置默认24小时制
    图扑智慧电力可视化大屏,赋能虚拟电厂精准减碳
    分别保存图像各个通道(python)
    【毕业设计】大数据用户画像数据分析系统 - python
    降维算法实战项目(1)—使用PCA对二维数据降维(Python代码+数据集)
    svo2.0 svo pro 编译运行
    JAVA计算机毕业设计体育城场地预定系统后台源码+系统+mysql数据库+lw文档
    配置Swagger开发环境有效,生产环境无效
    python 的Chirp功能
  • 原文地址:https://blog.csdn.net/u013628121/article/details/127131396