[英]Converting tuples in tuple to lists in list
I am at the last step of my code where I am supposed to change my preferred laptops back to a list which are already in a descending order.我在我的代码的最后一步,我应该将我喜欢的笔记本电脑改回一个已经按降序排列的列表。
The tuples in the tuple list represent (ranking score, (name, company, screen size))
.元组列表中的元组代表(ranking score, (name, company, screen size))
。
For example:例如:
tuple_lst = [(20,('Elitebook','HP',13)),(10,('SurfacePro','Microsoft',13)),(5,('MacBook Air','Apple',13))]
My expected output:我预期的 output:
[['Elitebook','HP',13],['SurfacePro','Microsoft',13],['MacBook Air','Apple',13]]
I have tried using list()
and creating for
loops but still failed to do so.我曾尝试使用list()
并创建for
循环,但仍然未能这样做。
Any help is greatly appreciated.任何帮助是极大的赞赏。
Try this below using list comprehension:在下面使用列表理解试试这个:
tuple_lst = [(20,('Elitebook','HP',13)),(10,('SurfacePro','Microsoft',13)),(5,('MacBook Air','Apple',13))]
print([list(x[1]) for x in tuple_lst])
you do something like that你做这样的事情
new_lst = [list(i[1]) for i in tuple_lst]
output output
[['Elitebook', 'HP', 13],
['SurfacePro', 'Microsoft', 13],
['MacBook Air', 'Apple', 13]]
Try this:尝试这个:
tuple_lst = [(20,('Elitebook','HP',13)),(10,('SurfacePro','Microsoft',13)),(5,('MacBook Air','Apple',13))]
res = []
for tup in tuple_lst:
res.append(list(tup[1]))
print(res)
Output will be:- Output 将是:-
[['Elitebook','HP',13],['SurfacePro','Microsoft',13],['MacBook Air','Apple',13]]
A nice way is to use tuple unpacking:一个不错的方法是使用元组解包:
>>> tuple_lst = [(20,('Elitebook','HP',13)),(10,('SurfacePro','Microsoft',13)),(5,('MacBook Air','Apple',13))]
>>> [list(y) for _, y in tuple_lst]
[['Elitebook', 'HP', 13], ['SurfacePro', 'Microsoft', 13], ['MacBook Air', 'Apple', 13]]
Here is the one line solution for your problem:这是您的问题的单行解决方案:
tuple_lst = [(20,('Elitebook','HP',13)),(10,('SurfacePro','Microsoft',13)),(5,('MacBook Air','Apple',13))]
tuple_lst = list(map(lambda x:list(x[1]),tuple_lst))
print(tuple_lst)
Output: [['Elitebook', 'HP', 13], ['SurfacePro', 'Microsoft', 13], ['MacBook Air', 'Apple', 13]] Output:[['Elitebook','HP',13],['SurfacePro','Microsoft',13],['MacBook Air','Apple',13]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.