You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现:根据子列表元素首字符筛选删除指定子列表

解决Python列表过滤问题:移除元素首字符全相同的子列表

嘿,这个需求很清晰,咱们用简洁的方式就能搞定!

思路拆解

咱们的核心任务是筛掉所有子列表里元素首字符完全一致的项。具体逻辑很简单:

  • 对每个子列表,先提取其中每个数字的首字符(把整数转成字符串后取第一个字符就行)
  • 检查这些首字符是不是全一样:如果去重后的首字符集合长度不等于1,说明存在不同的首字符,这个子列表就值得保留

实现代码

Config = [[32, 31, 33, 34], [32, 42, 13, 33], [32, 42, 34, 44], [42, 42, 43, 44]]

# 用列表推导式快速过滤符合条件的子列表
ConfigRevised = [sublist for sublist in Config 
                 if len(set(str(num)[0] for num in sublist)) != 1]

print(ConfigRevised)
# 输出结果正好是你要的:[[32, 42, 13, 33], [32, 42, 34, 44]]

代码细节解释

  • str(num)[0]:把每个整数转成字符串,取第一个字符(也就是数字的首位数)
  • set(str(num)[0] for num in sublist):把当前子列表所有元素的首字符放进集合,集合会自动去重
  • len(...) != 1:如果集合长度不等于1,说明子列表里有不同的首字符,这个子列表就会被保留到新列表中

这样处理后,就精准得到了你想要的ConfigRevised列表啦!

内容的提问来源于stack exchange,提问作者Parag Jafar Siddique

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:27:34