python输入一串数字将最大的数字输出_python – 找到由输入数字的数字组成的最大数字...

这比目前给出的大多数答案更可靠;-)

def max_number(n):

s = str(n)

digits = sorted(s, reverse=n>0)

return int(''.join(digits))

print max_number(231)

print max_number(-231)

print max_number(+231)

好的一点 – 我错过了单独使用数字的选择 – 这是为了完整性. 🙂

from math import *

def max_number(n):

digit_count = int(log(abs(n+1),10)) + 1

digits = sorted([(n / 10 ** (x - 1) % 10) for x in range(digit_count,0,-1) ], reverse=True)

return reduce(lambda x, y:10*x + y, digits)

print max_number(1000)

print max_number(999)

print max_number(2345128)

print max_number(231)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值