坚持列表理解

问题描述

word = "There are seven wonders of the world"
x = word.split()
new = [len(i) for i in x if len(i)>3]
print(new)

>>> [5,5,7,5]

代码段打印变量 word 中 len 大于 3 的单词的 lengths 列表,但我也想将单词与列表一起打印长度,如何?

解决方法

您可以生成元组 (i,len(i)) 而不仅仅是 len(i)

word = "There are seven wonders of the world"
x = word.split()
new = [(i,len(i)) for i in x if len(i)>3]
print(new)

这会给你输出:

[('There',5),('seven',('wonders',7),('world',5)]

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...