为了账号安全,请及时绑定邮箱和手机立即绑定

将列表的一部分作为列表

将列表的一部分作为列表

HUH函数 2021-08-11 21:58:18
我有一个清单 lstlst = ['Hi', 'Hello', '4', '71.5', '', '71.5', '', '68.1', '', '69', '', '69.4', '', '69.4', '', '70.3', '73.3', '']我想按原始列表的一部分创建一个新列表:在第三个元素之后,所有其他元素都在列表中,忽略空字符串。lst = ['Hi', 'Hello', '4', [71.5, 68.1, 69.0, 69.4, 69.4, 70.3, 73.3]]我(lst[2:]).split()在第三个元素忽略空字符串并将它们作为数字放入列表后尝试。
查看完整描述

2 回答

?
胡子哥哥

TA贡献1825条经验 获得超6个赞

你可以这样做:


lst = ['Hi', 'Hello', '4', '71.5', '', '71.5', '', '68.1', '', '69', '', '69.4', '', '69.4', '', '70.3', '73.3', '']


result = lst[:3] + [[float(e) for e in lst[3:] if e]]


print(result)

输出


['Hi', 'Hello', '4', [71.5, 71.5, 68.1, 69.0, 69.4, 69.4, 70.3, 73.3]]


查看完整回答
反对 回复 2021-08-11
?
呼如林

TA贡献1798条经验 获得超3个赞

filtermap(有点长):

lst = lst[:3]+[list(filter(lambda i: type(i)==float,map(lambda x: float(x) if x else x,lst[3:])))]

现在:

print(lst)

是:

['Hi', 'Hello', '4', [71.5, 71.5, 68.1, 69.0, 69.4, 69.4, 70.3, 73.3]]


查看完整回答
反对 回复 2021-08-11
  • 2 回答
  • 0 关注
  • 203 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号