小编clo*_*las的帖子

Groupby itertools 为不同的组提供相同的密钥

我按字符串中的第一个单词和最后一个单词对列表中的字符串元素进行分组。我正在使用groupbyfromitertools进行分组。该过程似乎对最后一个单词运行良好,但对第一个单词似乎效果不佳。

from itertools import groupby

model_eval_cols = ['MAD model meFuelFlowStar', 'MedAD model meFuelFlowStar', 'MAD model rpmStar', 'MedAD model rpmStar']

for k, v in groupby(model_eval_cols, key=lambda x: x.split(' ')[2]):
    print(k, list(v))
Run Code Online (Sandbox Code Playgroud)

以上输出

meFuelFlowStar ['MAD model meFuelFlowStar', 'MedAD model meFuelFlowStar']
rpmStar ['MAD model rpmStar', 'MedAD model rpmStar']
Run Code Online (Sandbox Code Playgroud)

但是,如果我尝试将字符串按第一个单词分组:

for k, v in groupby(model_eval_cols, key=lambda x: x.split(' ')[0]):
    print(k, list(v))
Run Code Online (Sandbox Code Playgroud)

似乎不起作用

MAD ['MAD model meFuelFlowStar']
MedAD ['MedAD model meFuelFlowStar']
MAD ['MAD model rpmStar']
MedAD ['MedAD model rpmStar']
Run Code Online (Sandbox Code Playgroud)

这让我很惊讶,因为按键是相同的

python split group-by python-itertools

0
推荐指数
1
解决办法
1610
查看次数

标签 统计

group-by ×1

python ×1

python-itertools ×1

split ×1