python - 从字符串中返回最长的单词
问题描述
我需要定义一个名为“len_score”的函数,它返回一个单词的长度。以 len_score 函数作为参数调用“最佳”函数。
我想成为的输出: print(best(len_score, names), "has the long name.")
麦贾格尔的名字最长。
我的代码是:
def len_score(name):
lst=[len(x) for x in name]
return lst
def best(lst1,lst2):
final=zip(lst1,lst2)
return max final
names = ["Ben", "April", "Zaber", "Alexis", "McJagger", "J.J.", "Madonna"]
print(best(len_score, names) == 'McJagger')
但我得到了错误,不知道如何在列表中设置条件。
解决方案
我认为你想要做的是:
def len_score(name):
lst = [len(x) for x in name]
return lst
def best(func, lst):
func_lst = func(lst) # call the passed in function ON lst
return lst[func_lst.index(max(func_lst))]
names = ["Ben", "April", "Zaber", "Alexis", "McJagger", "J.J.", "Madonna"]
print(best(len_score, names) == 'McJagger')
推荐阅读
- pyspark - 从 PySpark 中的月份和年份字符串列创建时间戳
- sql - 如何对两个 SQL 查询使用 IF 或 CASE JOINED 遍历每条记录
- javascript - 如何在 NodeJS 中运行函数并向客户端发送响应?
- c++ - windows.h 的 C++ 问题,在 vs17 中非法声明匿名“结构”
- php - Laravel 新错误显示包(Ignition)导致共享主机出错
- c# - 有没有办法用openxml制作一个只读段落?
- dask - 能够锁定 dask 工作人员,直到某些后期任务/步骤完成
- hadoop - Hadoop:在 hadoop 命令中使用 wikipediaminer jar 文件时出错
- python - Python:单词搜索
- python - 如何让 Selenium 登录 Costco.com 网站