Python max
求输入的一串数字中的MAX;
为什么出现的是最大的数字6,而不是1656
def max_q(m):
m=a;
for i in a:
if m<i:
m=i;
return m
a=input('请输入一串数字:')
print('最大值是:',max_q(a)) 你这样写的话,a = '453,4,456,1656' 这个字符串,for i in a 是遍访a 里面的每个元素。你想做的应该是把a = '453,4,456,1656'转化成a = 这样,然后找出列表里的最大值。
这样写也许行:
a=input('请输入一串数字:')
x=a.split(sep=',')#分隔切片字符串,然后拼接成列表
list1=[]
for i in x.copy():
list1.append(int(i))
b=max(list1)
print('最大值是:%d' % (b)) def max_q(m):
val = m.split(',') #将传入的字符串以','分开
max1 = int(val);#设置默认的最大值为分离出来的第一串字符
for i in val:#遍历分离完的字符串
i = float(i)#装换每一个字符串为浮点型
if max1 < i:
max1 = i;
return max1#放回判断结果
a=input('请输入一串数字:')
print('最大值是:',max_q(a)) def max_q(m):
return max(eval(i) for i in m.split(','))
a=input('请输入一串数字:')
#a='453,4,456,1656'
print('最大值是:',max_q(a))
页:
[1]