我需要通过一个列表并打印最长的单词。例如,如果有两个单词长度为三个字母,我可以只用一个单词来完成此操作,但无法弄清楚如何打印多个单词。 我试过Python - 从列表中打印多个最短和最长的单词
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)
这也同前面的代码
我还需要在列表中最短的词做到这一点。
道歉,如果这不是一个好问题,那是我的第一个。
这很容易,而且工作得很好,我找到了。但是有没有办法让它适应最短的单词? – Jacobsayshi
对于最短的单词 - 我已经将p设置为最长的单词的长度,但有没有更好的方法来做到这一点,因为最短的单词可以更改为大于此值。我可以将它设置为100,但看起来有点俗气。 – Jacobsayshi
如果你想要一个大于任何其他数字的数字,使用无穷大 - 这在Python中不幸被拼写为'float('inf')''。否则,你的第二个想法是完全正确的。 (在这种情况下,你也可以使用'sys.maxsize',这是最大可能集合的大小,但我认为infinity更具惯用和明显性。) – abarnert