[英]Formatting the specific element in the list in python
我是python的新手。
我有一个这样的清单:
LIST = [ ['A','B','23'], ['C','D','2'], ['E','F','11'] ]
我想将其更改为以下内容:
LIST2 = [ ['A','B',[23]] , ['C','D',[2]] , ['E','F',[11] ] ]
如上所示,必须更改第三个元素。
我试过了,但无法避免单引号。
帮助将不胜感激!
您可以使用列表推导式生成一个新列表,其中每个列表中的第三个元素被转换为整数:
l = [ ['A','B','23'], ['C','D','2'], ['E','F','11'] ]
o = [x[:2] + [[int(x[2])]] for x in l]
print(o)
输出:
[['A', 'B', [23]], ['C', 'D', [2]], ['E', 'F', [11]]]
请注意,将变量命名为与内部对象(例如list
相同的名称并不是一个好主意,即使您确实更改了大小写。
另一种方法:
LIST = [ ['A','B','23'], ['C','D','2'], ['E','F','11'] ]
LIST2 = [[*head, [int(tail)]] for *head, tail in LIST]
print(LIST2)
印刷:
[['A', 'B', [23]], ['C', 'D', [2]], ['E', 'F', [11]]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.