gpt4 book ai didi

python - 在值更改时使用 python 分割排序文件

转载 作者:太空宇宙 更新时间:2023-11-03 18:50:24 32 4
gpt4 key购买 nike

我是Python新手。我的要求(如果我必须使用 awk 来完成的话很简单)如下,

下面提到的文件(test.txt)是制表符分隔的,

1 a b c
1 a d e
1 b d e
2 a b c
2 a d e
3 x y z

我想要的输出是这样的

文件 1.txt 应具有以下值

a b c
a d e
b d e

文件 2.txt 应具有以下值

a b c
a d e

文件 3.txt 应具有以下值

x y z

原始文件按第一列排序。我不知道必须分割的行号。它必须是值(value)的变化。使用 awk,我会这样写

awk -F"\t" 'BEGIN {OFS="\t";} {print $2","$3","$4 > $1}' test.txt 

(性能方面,Python 会更好吗?)

最佳答案

awk 非常适合这个,并且应该快得多。速度真的是一个问题吗?你的输入有多大?

$ awk '{print $2,$3,$4 > ("file"$1)}' OFS='\t' file

演示:

$ ls
file

$ cat file
1 a b c
1 a d e
1 b d e
2 a b c
2 a d e
3 x y z

$ awk '{print $2,$3,$4 > ("file"$1)}' OFS='\t' file

$ ls
file file1 file2 file3

$ cat file1
a b c
a d e
b d e

$ cat file2
a b c
a d e

$ cat file3
x y z

关于python - 在值更改时使用 python 分割排序文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18495920/

32 4 0
文章推荐: URL 的 Python key 生成策略
文章推荐: html - 使用CSS在DIV中图像下的动态高度/渐变
文章推荐: html - 背景图像未显示在
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com