【Python】三种方法在列表中找最小值及其在列表中所在的位置

本文收录于《python学习笔记》专栏,这个专栏主要是我学习Python中遇到的问题,学习的新知识,或总结的一些知识点,我也是初学者,可能遇到的问题和大部分新人差不多,在这篇专栏里,我尽可能的分享出我学习的内容,专栏在持续更新中……

目录

​        第一种方法:多函数

        第二种方法:while循环

        第三种方法:min函数


这是题目,大致意思是在这个列表中找出最低值 2,并找其索引。


这三种方法都是我在学习过程中试出来得,可能方法不是很好,但是我想说解决问题的办法不止一种。 

第一种方法:多函数

这种方法就是利用多个函数,具体思路看注释,这种方式不太实用,相比其他比较麻烦,不太推荐。

"""
1.存储数据,复制一份
2.先将第一份升序,然后选出最小值。
3.用第一份找出的数据在复制的那一份中最小值的下标。
"""
a = [18,25,7,36,13,2,89,63]
a1 = a.copy()
a.sort(reverse = False)
print(f'最低积分是{a[0]}')
c = a[0]
b = a1.index (c)
print(f'位置是{b}')

第二种方法:while循环

这种方法是利用循环,把列表从头到尾循环一遍,做大小对比,大的数会被删掉,保留最小的值。这种方法对思维可以有一个锻炼,值得大家试一试。


a = [18,25,7,36,13,2,89,63]
c = a[0]
b = a[::-1]#::-1倒叙
while b:  # b非空就循环继续
    i = b.pop()  # 不断减少列表元素
    if i < c:
       c = i
d =a.index(c)
print(f'最低积分是{c}')
print(f'位置是{d}')

第三种方法:min函数

这种方法很简单,利用min函数,直接找出列表最小值,但是作为练习项目用这种方式不太锻炼自己的编程思维,但是用来编写项目是可以使用的。

a = [18,25,7,36,13,2,89,63]
print(f'最低积分是{min(a)}')
b = a.index(min(a))
print(f'位置是{b}')

在Python学习过程中要不断开拓自己的思维,用常人想不到的方法可能会让遇到的问题迎刃而解,在我学习过程中,我的老师经常让我做一些思维开拓的题目,锻炼我们的思考能力。

以上就是我的全部思路了,如果有其它思路的,欢迎分享给我。

  • 20
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 17
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

-李华同学-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值