longest_string = len(max((row[index] for row in d.values()), key=len))
如果只需要长度,而不需要字符串本身,则可以在生成器表达式中获取长度:
highest_length = max(len(row[index]) for row in d.values())
演示:
>>> index = 1
>>> d = {'foo': ['abc', 'defg'],
... 'bar': ['hij', 'klmno']}
>>> max((row[index] for row in d.values()), key=len)
'klmno'
>>> max(len(row[index]) for row in d.values())
5
您需要使用生成器表达式来提取正确的索引:
如果只需要长度,而不需要字符串本身,则可以在生成器表达式中获取长度:
演示:
但是,您无法避免对字典中的所有值进行迭代。你知道吗
很接近,只需要使用生成器表达式来迭代列表中的所有项。你知道吗
首先,使用列表提取所有感兴趣的字符串:
接下来,把马克斯带到弦的镜头上:
相关问题 更多 >
编程相关推荐