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

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日

悬赏问题

  • ¥50 类鸟群Boids——仿真鸟群避障的相关问题
  • ¥15 CFEDEM自带算例错误,如何解决?
  • ¥15 有没有会使用flac3d软件的家人
  • ¥20 360摄像头无法解绑使用,请教解绑当前账号绑定问题,
  • ¥15 docker实践项目
  • ¥15 数电几道习题,写出作答过程,ai一律不采用
  • ¥15 利用pthon计算薄膜结构的光导纳
  • ¥15 海康hlss视频流怎么播放
  • ¥15 Paddleocr:out of memory error on GPU
  • ¥30 51单片机C语言数码管驱动单片机为AT89C52