WEChange0529 2021-10-09 23:36 采纳率: 100%
浏览 236
已结题

python如何交换列表中元素最值位置

要求使用python在给定的列表中找到最大值和最小值并交换位置,再输出交换完成后的列表。
如:给定列表为[ 10,8,-1, 100,35, 200],输出列表为:[ 10,8,200, 100,35, -1].
代码如下。思路是先通过循环找到列表的最值,再通过定义变量交换列表元素位置。
报错为m,n不在列表内。

list1=[10,8,-1,100,35,200]
m=list1[0]
n=list1[0]
for i in list1:
    if i>m:
        m=int(i)
    if i<n:
        n=int(i)
    a=list1.index('m')
    b=list1.index('n')
list1[a],list1[b]=list1[b],list1[a]
print(list1)

静候斧正。

  • 写回答

1条回答 默认 最新

  • 想上天的狗 2021-10-09 23:52
    关注

    index里直接m,n就好,不用加引号

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月18日
  • 已采纳回答 10月10日
  • 创建了问题 10月9日

悬赏问题

  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错