Skip to main content
 首页 » 编程设计

python之将数字加倍

2025年05月04日12me-sa

def tuplify(number): 
    x = str(number) 
    if len(x) <= 0: 
        return 0 
    lst = [] 
    for i in range(0,10): 
        if i == x[len(x)-1]: 
            lst.append(i) 
        return tuple(lst) 

这是我的代码,我无法得到我想要的输出。

tuplify(102486) 应该给我 (1, 0, 2, 4, 8, 6)

请您参考如下方法:

你可以把它转换成这样的数字元组

print tuple(map(int, str(102486))) 
# (1, 0, 2, 4, 8, 6) 

但请注意,不会保留数字中的前导零。

除了比较字符串和数字之外,

if i == x[len(x)-1]: 

您总是将 i 与最后一个元素进行比较。

另外,你想返回一个元组,但如果字符串为空,那么你将返回零

if len(x) <= 0: 
    return 0 

相反,一个空元组是合适的

if len(x) == 0: 
    return ()