【发布时间】:2018-05-17 14:36:05
【问题描述】:
我把这个字符串给了我想从中找到最大值的python代码。
>>> a = ("4 5 29 54 4 0 -214 542 -64 1 -3 6 -6")
>>> a = a.split(" ")
>>> max(a)
>>> 6
谁能解释一下为什么它没有返回 542? 终于找到了正确的代码:
>>> a = a.split(" ");
>>> a = [int(i) for i in a];
>>> return str(max(a))
但是谁能告诉我我在以前的代码中的愚蠢之处。
【问题讨论】:
-
拆分后,
a仍然是一个字符串列表。在调用max之前将其映射到整数列表 -
尝试在分割线后打印出
a的值,你会看到 -
不正确复制粘贴到您的问题中。 REPL 中的
>>> max(a)将输出'6',而不是>>> 6!这应该作为一个提示:) -
是的,我没有观察到
标签: python python-3.x python-2.7