如何提取列表中字符串与整数组合元素的最小值
实现思路
- 遍历嵌套列表的每一个子列表,取出子列表中存储的长字符串,按逗号拆分后去除条目两端的空白字符,得到所有「品牌-价格」的独立条目
- 对每个条目按
-拆分,将后半部分的价格转为整数作为比较依据 - 取当前组内价格最小的条目转为全小写,最后将所有组的结果用逗号拼接即可
代码示例
# 给定的原始嵌套列表 alist = [["Chanel-1000, Dior-2000, Prada"],["Chloe-200,Givenchy-400,LV-600"],["Bag-1,Bagg-2,Baggg-3"]] result = [] for sub_item in alist: # 拆分单条长字符串为独立的品牌价格条目,去除多余空格 item_list = [i.strip() for i in sub_item[0].split(",")] # 按价格取最小值 min_price_item = min(item_list, key=lambda x: int(x.split("-")[1])) # 转小写后加入结果集 result.append(min_price_item.lower()) # 输出最终结果 print(",".join(result))
运行结果
chanel-1000,chloe-200,bag-1
和预期输出完全一致。
内容的提问来源于stack exchange,提问作者ppd2021
相关产品推荐
相关产品推荐

