处理两个具有不同 delimination 的文件 Python 3

Handling two files with varying delimination Python 3

我想将两个文本文件 write/append 合并到一个文件中。每个文件都有不同的分隔符。有没有办法轻松检测脱层?或者处理这种情况的简单方法?如何处理未知文件删除?

谢谢!

不,没有简单的方法来确定未指定的分隔符。事实上,很容易构造出分隔符不明确的病态案例。

但是,从您提供的示例中可以看出希望。您的字段似乎主要是字母数字数据——有时包括连字符、引号等——由常用标点符号分隔。您可以阅读文件的几行并根据文本特征确定可能的分隔符。

识别字母数字字段并将其折叠为单个字符,例如 A。从剩余的字符中,寻找一个或多或少与这些字段交替出现的字符。使用优先考虑列表,例如(制表符、逗号、space、...)并计算一些拟合优度,直到获得看起来可能的数字。使用它作为分隔符来读取文件。

一旦正确提取了每个文件的行,使用 csv 包编写文件就很简单(参见在线示例)。