现在有一个文件有一百多万条数据,按行存储的。 100 多 M ,文本类型的。我想分割成小文件。每个文件 10000 行。想问下各位大神有没有解决办法。或者有代码就更好了。
现在有一个文件有一百多万条数据,按行存储的。 100 多 M ,文本类型的。我想分割成小文件。每个文件 10000 行。想问下各位大神有没有解决办法。或者有代码就更好了。
|
ipwxJan 1, 2017
1
100M 这个还需要问大神…… 老老实实地边读边写不就行了,时间都在 IO 上不在运算上, Python 绰绰有余。
哦对了,最好是读写的两个文件在两块硬盘上,不然就很慢了。 |
|
z657386160zJan 1, 2017 via iPhone
2
split -l
|
|
skydiverJan 1, 2017
3
这种事情还需要用 Python ?直接 coreutils 自带的命令 split -l 10000 就可以了。
|
|
484A4BJan 1, 2017
4
如果不限定 Python 的话,用 shell 一行就够了
|
|
6
@ipwx
如果把这一百多万行数据读到内存中用 split 分成一百多万行,我担心程序会崩~~ @z657386160z @skydiver @484A4B 哎。关键是是 window 系统。没有 split 命令。 QAQ |
|
7
@ipwx thank you very much.
|
|
LplJan 1, 2017 via Android
8
长春儿~?
|
|
v23exJan 1, 2017 via iPhone
9
先在本地测试
|
|
Izual_YangJan 1, 2017 via Android
10
@AlisaDestiny 有
|
|
guyskkJan 1, 2017 via Android
11
100M 不大,全部读进内存没事的
|
|
ericlsJan 1, 2017 via iPhone
12
@AlisaDestiny Python 不会全部读进内存吧……
|
|
billleeJan 1, 2017
13
你为什么要全部读进内存,一行行读不行吗?
|
|
ryd994Jan 1, 2017 via Android
14
莫不是 PHP 程序员?
这么大的文件我担心程序会崩 233333 用个 for 就搞定的事 或者 head 配合 tail ,根本不需要 Python |
|
jyf007Jan 1, 2017 via Android
15
split -l 10000
什么 用 Python 我不知道 |
|
jyf007Jan 1, 2017 via Android
16
@AlisaDestiny msys2 (滑稽)
|
|
18
@Lpl guess right.哈哈。
|
|
RqPS6rhmP3Nyn3TmJan 1, 2017 via iPhone
19
Readline 读取至内存,然后写入不好吗
|
|
20
|
|
Miy4moriJan 2, 2017 via Android
21
兄弟,学学流的概念吧,处理文件要都读内存里全世界都要疯啊
|
|
qile1Jan 3, 2017 via Android
22
f 。 readlines()
|
|
araralorenJan 3, 2017
23
@AlisaDestiny 自带的行读取函数大部分时候够用,大概是类似与 .readlines 之类的函数,我估计会做惰性处理,再说哪个用户会在乎那几百 M 内存。。
|
|
kevin8096Jan 3, 2017
24
awk
|