python - Python - 在文本文件错误中查找最长的单词
问题描述
我试图在文本文件中找到最长的单词,它一直在说:
ValueError: max() arg is an empty sequence
def find_longest_word(filename):
with open(filename,'r+') as f:
words = f.read().split()
max_len_word = max(words,key=len)
print('maximum length word in file :',max_len_word)
print('length is : ',max_len_word)
print(find_longest_word('data1.txt'))
我做错什么了?
解决方案
这应该适合你:
from functools import reduce
def find_longest_word(filename):
f = open(filename, "r")
s = [y for x in f.readlines() for y in x.split()]
longest_word = reduce(lambda x, y: y if len(x) < len(y) else x, s, "")
print("The longest word is", longest_word, "and it is", len(longest_word),"characters long")
return longest_word
print(find_longest_word('input.txt'))
推荐阅读
- javascript - 我的不和谐机器人是否可以将当前聊天中的图像下载到我电脑上的目录中?
- javascript - 无法在 mat-select multiple 中显示数组值
- javascript - 无法在 jquery 中正确附加 div onclick
- if-statement - 条件剑道 if 语句中的未捕获错误
- python-3.x - AssertionError(两条线段的交点)
- python - 这个 Python 代码是做什么的(它是关于函数和类的)?
- php - Symfony 5 - 语义 *** 错误没有名为 category.id 的字段或关联
- flutter - Flutter Stateful 小部件不会重建
- flutter - Flutter 通过 Navigation.push 将 TextField 输入传递给另一个小部件
- python - Python 给了我一和减一,我怎样才能将其更改为 True 和 False?