python列表可以放不同类型_Python – “加入”不同类型列表的列表

所以我有一个这样的列表列表:

my_list = [['hi','Ohio',[1,0.0]],['bye','NewYork',[2,0.0]],['go','Maine',[3,0.0]]]

如您所见,它有3种不同的类型(字符串,整数和浮点数).

我需要将这些子列表“加入”以输出一个包含以下形式的新列表:

>>> new_list

[['hiOhio10.0'], ['byeNewYork20.0'], ['goMaine30.0']]

所以,为了做到这一点,我尝试了以下’列表理解’:

>>> new_list = [["".join(["".join(str(a)) for a in b])] for b in mylist]

但这给了我输出:

>>> new_list

[['hiOhio[1, 0.0]'], ['byeNewYork[2, 0.0]'], ['goMaine[3, 0.0]']]

这不是我所追求的.

我试过的其他事情:

>在先前显示的列表理解中添加另一个for循环.

例如:

[[["".join(["".join(str(c)) for c in a])]for a in b] for b in my_list]

但这给了我这个错误:

Traceback (most recent call last):

File "", line 1, in

[[["".join(["".join(str(c)) for c in a])]for a in b] for b in my_list]

TypeError: 'int' object is not iterable

>我也试过在’list flattening’上关注this SO question,但似乎这会扩展我列表中的每个条目,我不想要

任何帮助和/或提示都会很棒!

解决方法:

当你可以简单地使用for循环时,为什么会很复杂

new_list=[''.join(str(y) for x in z for y in x) for z in my_list]

标签:python,list,python-2-7,join,list-comprehension

来源: https://codeday.me/bug/20190725/1528308.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值