a和b才是list
你这一通神输出,输出i和t干什么,i和t是两个int,也没有下标啊
而且a里存的是完数,b里存的是所有的解,一个a里面的元素要对应多个b里的元素,这就很扯淡
你不如找到一组完数就直接print,别搞list来存
问为什么不对之前,试着先把自己写的代码翻译翻译,看它到底要干什么
你总要能翻译才能会写代码
否则自己写的代码自己都看不懂,那能执行对了全靠运气
def calwanshu(inputstr: str):
l = inputstr.split(',')
m, n = int(l[0]), int(l[1])
s = ''
dic = defaultdict(list)
for i in range(m, n + 1):
for j in range(1, i):
if i % j == 0:
dic[i].append(j)
for k, v in dic.items():
if int(k) == sum(v):
for p in v:
s = s + str(p)
s = " + ".join(map(str, v))
print("{} = ".format(k), s)
print("None")
if __name__ == '__main__':
calwanshu(input("输入取数范围:"))
我们这个是简单的Python,需要简单的代码解决,而且有题目要求,必须用列表🙏复杂的代码我们都没学,孩子也才学个皮毛各位嘴下留情