所以,我必须输入一个数字并找到该数字中的最大数字,所以如果数字是2314我想得到4,我的代码到目前为止:
FindlargestInteger
答案 0 :(得分:0)
转换为string
,然后获取max
a = 2314
max(str(a))
# output 4
答案 1 :(得分:0)
如果您的输入是数字,则需要先将输入转换为字符串,然后将每个字符转换回整数并取最大值。您可以使用generator expression轻松使用int
将所有字符转换为整数,然后应用max
。
maximum = max(int(x) for x in str(a))
为了举个例子:
maximum = max(int(x) for x in str(415023)) # 5
另一方面,如果您的输入是一个字符串,那么只需跳过转换为字符串。
maximum = max(int(x) for x in a)
所有这些示例均假设您的号码中没有小数点或负号。如果你这样做,你可以明确地忽略它们。
maximum = max(int(x) for x in str(a) if x not in '.-')
举个例子:
a = -15.93
maximum = max(int(x) for x in str(a) if x not in '.-') # 9
答案 2 :(得分:0)
由于这是一个家庭作业,这是另一个简单的答案。由于您是初学者,因此未使用max()
。
a = input("number: ")
print (sorted(list(a))[-1])
首先将输入转换为列表,然后对其进行排序。最后一个数字是最大值。 [-1]
是列表的最后一个索引。
答案 3 :(得分:0)
reduce
中的python2
也可能有用。
maximum = reduce(lambda acc, n: acc if acc > int(n) else int(n), "123131891", 0)