gpt4 book ai didi

Python - 从列表中打印多个最短和最长的单词

转载 作者:太空宇宙 更新时间:2023-11-03 14:29:02 33 4
gpt4 key购买 nike


我需要浏览一个列表并打印其中最长的单词。我可以只打印一个单词,但无法弄清楚如何打印多个单词,例如,如果有两个单词的长度为三个字母。我试过了

list.sort (key=len, reverse =True)
print ("The longest word in the list is: " , list[0])

这可行,但只打印第一个最长的单词,这对超过一个最长的单词没有好处。

我也试过:

p=0
for item in list:
if len (item) > p:
s=item
p = len(item)
print (s)

这也和前面的代码一样

我还需要对列表中最短的单词执行此操作。

如果这不是一个好问题,我深表歉意,这是我的第一个问题。

最佳答案

首先,不要永远使用list 作为变量名,因为它会覆盖内置类型并可能在以后引起麻烦。

你可以对最长的单词执行此操作:

for i in lst:
if len(i) == max(lst, key=len):
print(i)

对于最短的单词:

for i in lst:
if len(i) == min(lst, key=len):
print(i)

第一个代码打印与最长字符串长度相同的字符串。第二个做同样的事情,但使用最短的字符串。

一个小的优化是在循环之前预先计算最大/最小长度,因此您不需要每次都重新计算。

maxLen = max(lst, key=len)
for i in lst:
if len(i) == maxLen:
print(i)

对另一个循环也可以这样做。

关于Python - 从列表中打印多个最短和最长的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14725120/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com