列表python问题

在一行输入10个数,以空格分隔, 输出其中第几个教最大以及最大值。
样例输入:10 43 55 7 91 18 66 -54 0 9
样例确出: 第5个数最大,该数为91
提示:用input()以字符串形式获取输入结果,用split()函教进行分割,分割后的结果为列表,注意列表中元素类型为字符串,比较最大值时要做教据类型的转换处理,将字符串转化为教值

lst=list(eval(input().replace(' ',',')))
m=max(lst)
print('第{}个数最大,该数为{}'.format(lst.index(m),m))
num = list(map(int,input().split()))
for i,j in enumerate(num):
    if j == max(num):
        break
print(f'第{i+1}个数最大,该数为{j}')

 

#调用sorted函数进行排序,后通过切片取最后一个值
list =sorted(eval(input("输入数据,空格分隔").replace(' ',',')))
print(list[-1])

不用max()函数,可以用for循环遍历,如下:

lst=list(eval(input().replace(' ',',')))
m = lst[0]

for i,n in enumerate(lst):
    if n>m:
        m,k = n,i+1

print(f'第{k}个数最大,该数为{m}')