python - 如何按列表的长度重复列表中的最大元素
问题描述
编写一个名为 all_change_to_max_end 的 Python 函数,该函数将整数列表作为输入,确定列表中的第一个或最后一个元素哪个更大,然后将所有其他元素设置为该值。输出更改后的列表。
示例输入和输出:
all_change_to_max_end([1, 2, 4, 9, 3]) # should be [3, 3, 3, 3, 3]
all_change_to_max_end([11, 5, 9]) # should be [11, 11, 11]
all_change_to_max_end([2, 11]) # should be [11, 11]
我试过使用:
def all_change_to_max_end(a_list):
return max(a_list) * len(a_list)
但这不起作用,因为它将最大数字乘以总长度
all_change_to_max_end([2, 10, 4, 8]
40
任何帮助将不胜感激!
解决方案
您需要检查这两个元素的最大值(第一个和最后一个)
def all_change_to_max_end(a_list):
return [max(a_list[0], a_list[-1])] * len(a_list)
推荐阅读
- javascript - 为什么 Javascript 中声明的变量在当前范围内是不可配置的?
- python - 简单的 DFT 系数 => 幅度/频率 => 绘图
- c++ - C ++上的char数组输出中的不同颜色字符
- c# - 格式化 C# 字符串以匹配特定结果
- javascript - 谷歌地图标记悬停效果
- javascript - 成功完整提交时弹出消息
- c++ - 在不释放所有动态分配的资源的情况下结束程序是否有风险?
- mysql-workbench - 显示数据库关系结构
- scala - 为 Apache Storm Bolt 编写单元测试时创建 testTuple 时出错
- android - 无法将字符串 Json 解析为 Json 对象