现有两个文件,其中一个是配置文件(至少1W条):
4201;aaa
4202;bbb
4203;ccc
……
另一个是目标文件,举例如下(百万来条):
aaa;2019-01-01;xxxx
bbb;2019-02-02;xxxx
ddd;2019-05-05;xxxx
……
现目标使用第一个文件里的第一列替换第二个文件里的第一列,变成如下:
4201;2019-01-01;xxxx
4202;2019-02-02;xxxx
4203;2019-05-05;xxxx
……
python我知道拿字典做,但问题是两个文件都太大了,配置文件至少1W条,那字典也得做1W多。然后目标文件百万来条,逐行读也挺耗的。请问有啥高效点的办法做替换?可以用shell或其他语言,谢谢
你担忧的有一半是伪问题,1w多个元素的字典并不大,而且字典的时间效率很好。
不管多么“高效”的工具都要逐行读取文本,因为这个问题的逻辑是这样。
你只要注意边读行,边处理,边写入。不要一次全部读入再遍历list,浪费内存。
参考代码: