请问我的代码出错在哪里?

写一个函数get_digits将参数分解出每个位的数字并按顺序存放至列表 如get_digits(1234)=[1,2,3,4]

img

朋友,你有无定义ddd;另外,你取位过程似乎没写完整;最后,给你提供一个新思路

def get_digits(x):  # 入口为x,即你想解构的数字,默认为int
    result_list = []
    if x > 0:  # 按照你的示例图提供,我不清楚它的含义
        for a in str(x):  # 如果你可以确保格式一定是数字,可以将数字转化为str列表
            result_list.append(a)  # 从最高位数起,将每一个位的数加入结果列表
    return result_list  # 出口为结果列表


# 假设这是你想要解构的数字列表
check_list = [1, 12, 123]  # 如果为check_list = ['1', '12', '123']str类型的列表,第三行应为if x > '0':
for i in check_list:  # 循环套用get_digits(x)
    result = get_digits(i)
    print(result)  # 结果分别为['1']、['1', '2']和['1', '2', '3']

建议将完整代码发出来,不然我们都不知道你的ddd函数是什么

你这个函数调用ddd,然后ddd又调用自身,是吗
你这是无限递归了

兄弟,如果这是你全部代码的话,你的ddd是什么?前面没有定义吧?