Python实现将列表中带斜杠元素拆分至两个新列表求助
解决Python列表拆分问题
嘿,这个需求其实很简单,咱们一步步来实现:
首先,核心思路就是遍历原列表中的每个字符串,用 / 作为分隔符把每个元素拆分成两部分,再分别存入两个新列表里就行。
完整代码示例
# 原列表 items = ['40/40', '10/40', '30/40', '4/5', '18/40', '40/40', '76/80', '10/10'] # 初始化两个空列表用来存放拆分后的数据 items_1 = [] items_2 = [] # 遍历原列表的每个元素 for item in items: # 用 '/' 分割字符串,得到两个部分 part1, part2 = item.split('/') # 分别添加到对应的列表 items_1.append(part1) items_2.append(part2) # 验证结果 print(items_1) # 输出: ['40','10','30','4','18','40','76','10'] print(items_2) # 输出: ['40','40','40','5','40','40','80','10']
代码解释
- 首先我们初始化了两个空列表
items_1和items_2,用来接收拆分后的结果。 - 然后用
for循环遍历原列表items中的每一个字符串元素。 - 对每个元素调用
split('/')方法,这个方法会把字符串按/切割成一个包含两个元素的列表,我们用part1, part2直接解包这两个值。 - 最后把
part1添加到items_1,part2添加到items_2就完成啦!
如果你想更简洁一点,还可以用列表推导式+zip的组合写法,一行搞定拆分:
items = ['40/40', '10/40', '30/40', '4/5', '18/40', '40/40', '76/80', '10/10'] items_1, items_2 = zip(*(item.split('/') for item in items)) # 注意:zip返回的是元组,如果需要列表类型的话转一下 items_1 = list(items_1) items_2 = list(items_2)
这个写法更紧凑,适合喜欢简洁代码的同学~
内容的提问来源于stack exchange,提问作者Lucas Le Doux
相关产品推荐
相关产品推荐

