将一个txt文件分离成多个txt文件

Separate one txt file to multiple txt files

我有一个文本 (.txt) 文件,其中包含

cat1.jpg 386,575,538,734,0
cat5.jpg 383,575,539,736,0
dog16.jpg 382,576,538,735,0
dog17.jpg 384,581,525,739,0
.
.
.

我想取每一行中的值并将第一列中的名称作为文件名。

示例:

我在Ubuntu中使用了man split,但它创建了

命令:split -l 1 sample.txt
输出:xaa.txt、xab.txt、xac.txt 等等。

我只想要cat1.txt、cat5.txt、dog16.txt、do17.txt等等

你能帮忙解决这个问题吗? (Python 或 MatLab。)
提前致谢。

如果您的原始 .txt 文件的名称是例如pictures.txt:

with open("pictures.txt") as picfile:
    for line in picfile:
        fullname, __ = line.split(maxsplit=1)
        name, __ = fullname.split(".")
        with open(name + ".txt", "w") as outfile:
            outfile.write(line)