python列表分组名称,Python将列表中的类似子字符串分组

在本教程中,我们将编写一个程序,该程序将列表中的相似子字符串分组。让我们看一个例子来更清楚地理解它。

输入值strings = ['tutorials-python', 'tutorials-c', 'tutorials-java', 'tutorials-javascript', 'python-1', 'python-2',

'javascript-1']

输出结果[['tutorials-python', 'tutorials-c', 'tutorials-java', 'tutorials-javascript'], ['python-1', 'python-2'],

['javascript-1']]

我们将使用itertools模块中的groupby方法来解决该问题。该GROUPBY方法组中的所有类似的字符串转换为ITER对象。对于给定的列表,我们用-分割了字符串,并将字符串的第一部分传递给groupby方法。

让我们看看解决这个问题所涉及的步骤。初始化字符串列表。

导入itertools模块。

初始化一个空列表。

现在,将字符串和一个lambda函数传递给itertools.groupby方法。

lambda函数在使用-拆分后应返回字符串的第一部分

该GROUPBY方法将返回元素及其集团的元组的列表。

在每次迭代中,将一组相似的元素转换为一个列表。

将列表追加到空列表。

打印结果。

示例# importing the itertools module

import itertools

# initializing the strings

strings = ['tutorials-python', 'tutorials-c', 'tutorials-java', 'tutorials-javascript', 'python-1', 'python-2', 'javascript-1']

# empty list

result = []

# iterator

# lambda function will return first part from the string

iterator = itertools.groupby(strings, lambda string: string.split('-')[0])

# iterating over the result

# element and its group

for element, group in iterator:

# appending the group by converting it into a list

result.append(list(group))

# printing the result

print(result)

输出结果

如果运行上面的代码,则将得到以下结果。[['tutorials-python', 'tutorials-c', 'tutorials-java', 'tutorials-javascript'],

ython-1', 'python-2'], ['javascript-1']]

结论

如果您对本教程有任何疑问,请在评论部分中提及。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值